猿问

我的代码没有写入文本文件,但我没有收到任何错误

我是 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 的新手,我知道我的很多代码可能有更好的方法,而且我完全愿意接受建议!


慕尼黑5688855
浏览 86回答 1
1回答

慕桂英3389331

您需要将文件对象传递f给write():def write(f):&nbsp; # <-- file object&nbsp; &nbsp; global change&nbsp; &nbsp; nps = str(newPrice) + ' USD'&nbsp; &nbsp; writeThis = nps + ' ' + writeChange&nbsp; &nbsp; f.write(writeThis)&nbsp; &nbsp; f.write('\n')&nbsp; &nbsp; print(writeThis)with open("bitcoinPrice.txt","w+") as f:&nbsp; &nbsp; &nbsp; &nbsp; while True:&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; getCost()&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; calcChange()&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; write(f)&nbsp; # <-- write needs to know what to write to
随时随地看视频慕课网APP

相关分类

Python
我要回答