我知道这是一个简单的问题,但我非常困难。
file=open("record.txt","w+")
record = file.read()
print("The record is "+str(record)+"!!")
main code...
file.write(str(reaction))
file.close()
我有他的代码,我在文件中有一些0.433534145355,但是当我执行打印+ str(记录)+的命令时,它只出现了记录!并且数字不存在。这段代码有什么问题。是否有一个带小数位的特殊代码,我不想使用int()。
答案 0 :(得分:6)
正如here所述:
'w +'开放阅读和写作。如果没有,则创建该文件 存在,否则被截断。流定位于 文件的开头。
所以是的,您的文件也会被打开以供阅读,但它被截断(即它现在是零字节长,它是空的),没有任何东西可以读取已经存在的内容。
基本上,w
中的'w+'
表示模式面向writing
,您也可以选择阅读(在您需要寻找和阅读的情况下非常有用)你写的是什么。除非你写,否则没有什么可读的。
相反,您可以使用:
'r +'开放阅读和写作。流位于 文件的开头。
在这种情况下,r
中的'r+'
表示模式面向reading
,为您提供在必要时进行搜索和写入的选项(当数据已存在时有用,但可能需要改变)
答案 1 :(得分:0)
如果您想从文件中读取,则必须打开它才能阅读(r
)。