Python ValueError: Float() の無効なリテラル
float()
関数でサポートされていない認識できない引数を渡すと、Python コンパイラは ValueError: invalid literal for float()
などのエラーを発生させます。 Python コンパイラは、Python 2x バージョンではこの ValueError: invalid literal for float()
を発生させ、Python 3x バージョンでは ValueError: could not convert string to float
を発生させます。 関数。
Python の ValueError: float() の無効なリテラル
float()
関数は、文字列を浮動小数点数に型キャストできません。 むしろ、Python のバージョンによって異なる ValueError がスローされます。
Python 2
と Python 3
の両方の例を見てみましょう。
コード - Python 2
:
# python 2.7
import sys
print("The Current version of Python:", sys.version)
x = "123xyx"
y = float(x)
print(y)
出力:
The current version of Python: 2.7.18
ValueError: invalid literal for float(): 123xyx
コード - Python 3
:
# >= Python 3.7
import sys
print("The Current version of Python:", sys.version)
x = "123xyx"
y = float(x)
print(y)
出力:
The current version of Python: 3.7.4
ValueError: could not convert string to float: '123xyx'
Python 2.7
と Python 3.7
で同じコードを実行しましたが、Python のコンパイラの改善と継続的な開発により、エラーは同じではありません。
Python の ValueError: float() の無効なリテラル
を修正する
値エラー float() の無効なリテラル
または 文字列を float に変換できませんでした
を修正するには、float()
関数の引数として有効なリテラルを指定して、正しく解析できるようにする必要があります。
float 関数に有効な数値 文字列
(数字のみ) または 整数
値を指定すると、完全に機能します。
コード:
h = input("Enter you height:")
print(type(h))
height = float(h)
print("\nYour height is:", height)
print(type(height))
出力:
Enter you height:5.4
<class 'str'>
Your height is: 5.4
<class 'float'>
高さの値は常に float ですが、input ステートメントはすべての入力を文字列として受け取ります。 したがって、上記の場合、ユーザーは高さ "5.4"
を入力しましたが、そのクラスは str
ですが、後でそれを 'float'
に型キャストしました。
Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.
LinkedIn関連記事 - Python Error
- AttributeError の解決: 'list' オブジェクト属性 'append' は読み取り専用です
- AttributeError の解決: Python で 'Nonetype' オブジェクトに属性 'Group' がありません
- AttributeError: 'generator' オブジェクトに Python の 'next' 属性がありません
- AttributeError: 'numpy.ndarray' オブジェクトに Python の 'Append' 属性がありません
- AttributeError: Int オブジェクトに属性がありません
- AttributeError: Python で 'Dict' オブジェクトに属性 'Append' がありません