Pan*_*pai 11 python type-conversion text-files
我有一个非常简单的程序.代码:
money = open("money.txt", "r")
moneyx = float(money)
print(moneyx)
Run Code Online (Sandbox Code Playgroud)
文本文件money.txt仅包含以下内容:
0.00
Run Code Online (Sandbox Code Playgroud)
我收到的错误消息是:
TypeError: float() argument must be a string or a number
Run Code Online (Sandbox Code Playgroud)
这很可能是一个简单的错误.有什么建议?我使用的是Python 3.3.3.
tob*_*s_k 12
money是一个file对象,而不是文件的内容.要获取内容,您必须拥有read该文件.如果整个文件只包含那个数字,那么read()就是您所需要的.
moneyx = float(money.read())
Run Code Online (Sandbox Code Playgroud)
否则,您可能希望使用readline()读取单行甚至尝试使用csv模块来处理更复杂的文件.
此外,完成后不要忘记close()文件,或使用with关键字自动关闭它.
with open("money.txt") as money:
moneyx = float(money.read())
print(moneyx)
Run Code Online (Sandbox Code Playgroud)