Kuinka muuntaa Python-merkkijonot float-tyyppisiksi
Python-merkkijonon muuntaminen float-tyyppiseksi voi auttaa välttämään virheitä, jotka johtuvat ei-numeeristen merkkijonojen sisällyttämisestä aritmeettisiin operaatioihin.
Millaiset Python-merkkijonot voidaan muuntaa float-tyyppisiksi?
Jos haluat muuntaa Python-merkkijonon float-tyyppiseksi, merkkijonolla on oltava kelvollinen numeerinen esitys muodossa, joka on kelluva desimaaliarvo. Tämä tarkoittaa, että se voi sisältää desimaalimuodossa olevia lukuja, mukaan lukien desimaalipisteet ja tieteellinen merkintätapa (kuten "3.14" tai "2.7e-3"). Se ei kuitenkaan voi sisältää ylimääräisiä merkkejä, välilyöntejä tai merkkejä, jotka eivät edusta numeerisia arvoja. Jos se sisältää, muunnos ei onnistu.
Merkkijono-kelluva-muunnos on perustoiminto, joka sisältyy kaikkiin Python-versioihin. Joidenkin menetelmien ja toimintojen toiminnassa voi kuitenkin olla hienoisia eroja eri versioissa. Pidä silmällä muunnoksissa mahdollisesti ilmeneviä virheitä. Esimerkiksi merkkijonon syöttäminen, joka ei edusta kelvollista lukua, aiheuttaa virheen. Erityisiä arvoja, kuten NaN (ei luku) ja Infinity, ei voi muuntaa float-tyyppisiksi. Tämä tarkoittaa, että muunnoksia käyttävien kehittäjien on osattava käsitellä virheitä asianmukaisesti. Yksi tapa tehdä tämä on käyttää try/except-lohkoja virheiden havaitsemiseen ja niihin reagoimiseen.
Kuinka muuntaa Python-merkkijonoja float()-funktiolla
float() on sisäänrakennettu Python-menetelmä, joka muuntaa merkkijonot liukulukuiksi. Sitä käytetään usein muuttamaan käyttäjän syöttämät merkkijonot numeerisiksi, jotta syötettyjä tietoja voidaan käyttää laskelmissa tai numeerisissa operaatioissa. Ohjelmissa, jotka käsittelevät erilaisia tietoja, float() käytetään varmistamaan tietojen yhdenmukaisuus muuntamalla arvot numeeriseen muotoon.
Python-merkkijonojen muuntamiseksi float-tyyppisiksi käytä float() ja syötä kelvollinen merkkijono argumenttina:
str1 = "3.1416"
float_value = float(str1)
print(float_value) # Output: 3.1416pythonVoit myös muuntaa muut numeeriset tyypit, kuten int ja complex, liukuluvuksi suorittamalla ne float() kautta.
Try/except-lohkoja voidaan käyttää virheellisten käyttäjän syötteiden havaitsemiseen, kun merkkijonoja muunnetaan liukulukuiksi:
while True:
user_input = input("Enter a number: ")
try:
float_value = float(user_input)
print("Entered number as float:", float_value)
break # Exit the loop if the conversion was successful
except ValueError:
print("Invalid input! Please enter a numeric value.")
# The loop continues to prompt for valid inputpythonYllä oleva koodi on silmukka, joka kehottaa käyttäjiä syöttämään numeron. Sen jälkeen se yrittää muuntaa kyseisen arvon liukuluvuksi. Try-lohkossa float(user_input) tarkoittaa käyttäjän syöttämän merkkijonon muuntamista liukuluvuksi. Jos muunnos onnistui, numero tallennetaan kohtaan float_value ja palautetaan. Sitten lause break lopettaa silmukan ja jatkaa ohjelman suorittamista.
Jos merkkijonon muuntamisessa float-tyyppiseksi syntyy ValueError-virhe, except-lohkon koodi suoritetaan. Tämä voi tapahtua, jos käyttäjä syöttää arvon, jota ei voi muuntaa float-tyyppiseksi, kuten kirjaimen. Tällöin näyttöön tulee viesti, että syöttö on virheellinen, ja silmukka pyytää syöttämään kelvollisen arvon uudelleen.
Kuinka muuntaa Python-merkkijonot float-tyyppisiksi NumPy:n avulla
Jos haluat muuntaa Python-merkkijonon float-tyyppiseksi **NumPy:**llä, voit käyttää funktiota numpy.float64(). Se antaa sinulle 64-bittisen liukuluvun.
import numpy as np
string_value = "3.1416"
float_value = np.float64(string_value)
print(float_value) # Output: 3.1416pythonEnsin sinun on tuotava NumPy skriptiisi, jos se ei ole vielä asennettu. Sen jälkeen voit käyttää NumPyä soveltamaan funktiota numpy.float64() merkkijonoon string_value muuntaaksesi sen 64-bittiseksi liukuluvuksi.
Kuinka käyttää str()-funktiota
Jos taas haluat muuntaa float-tyyppisen arvon merkkijonoksi, voit käyttää str(). Tämä funktio muuntaa muut arvot merkkijonoiksi.
float_number = 3.1416
string_number = str(float_number)
print(string_number) # Output: "3.1416"pythonYllä olevassa esimerkissä float-arvo 3.1416 muunnetaan merkkijonoksi "3.1416" käyttämällä str().
str() on hyödyllinen myös useiden float-arvojen yhdistämisessä f-merkkijonoilla ( Python-merkkijonomuoto).
float_value1 = 3.1416
float_value2 = 2.7182
float_value3 = 1.6180
string_concatenation = f"Concatenation of: {str(float_value1)}, {str(float_value2)}, and {str(float_value3)}"
print(string_concatenation) # Concatenation of: 3.1416, 2.7182, and 1.6180pythonHuomaa, että kun muunnat float-tyyppisiä muuttujia merkkijonoiksi str(), tuloksena oleva merkkijono esitetään tekstinä eikä sitä voi enää käyttää numeerisissa laskelmissa tai matemaattisissa operaatioissa. Jos haluat käyttää sitä laskelmissa, sinun on muutettava se takaisin numeeriseen muotoon (kuten float-tyyppiseksi muuttujaksi).
Lue muista muunnoksista digitaalisesta oppaastamme. Selitämme, kuinka Python-merkkijonot muunnetaan listoiksi ja Python-merkkijonot datetime-objekteiksi.