我是python的初学者,我已经开始开发一个简单的程序,这个程序将每隔5分钟从一个网站上刮取当前的比特币价格,检测上一次刮取后的变化,打印这些信息,也将其写入一个文本文件。我现在的代码可以做到这一切,只是无法写入文本文件,我不知道为什么。
我很确定错误在write()函数中,因为那是错误信息指向的地方,但如果有人认为那是问题所在,我可以附上完整的代码。
def write():
global change
nps = str(newPrice) + ' USD'
writeThis = nps + ' ' + writeChange
f.write(writeThis)
f.write('\n')
print(writeThis)
with open("bitcoinPrice.txt","w+") as f:
while True:
getCost()
calcChange()
write()
由于我是python的新手,我知道我的很多代码可能有更好的方法,我完全欢迎大家的建议。
你需要通过文件对象 f
到 write()
:
def write(f): # <-- file object
global change
nps = str(newPrice) + ' USD'
writeThis = nps + ' ' + writeChange
f.write(writeThis)
f.write('\n')
print(writeThis)
with open("bitcoinPrice.txt","w+") as f:
while True:
getCost()
calcChange()
write(f) # <-- write needs to know what to write to