【发布时间】:2020-10-09 23:40:06
【问题描述】:
我正在编写应用程序,您可以找到here。
它具有我用来获取更新日志列表的功能:
def getChangeLog():
"""
This function downloads changelog from our repository.
:return:
list of change strings
"""
return [change.decode().rstrip() for change in urlopen(
'https://raw.githubusercontent.com/Acmpo6ou/PyQtAccounts/master/change.log')]
然后我可以使用此列表显示添加到我的应用程序的更改,在进行更改并将它们提交到存储库后我需要做的就是更新change.log 文件,因此当用户打开我的应用程序时,对话框将被显示,它将包含更改日志。
但由于某些奇怪的原因,urlopen 总是下载旧的 change.log 文件。
假设我的 change.log 中有这个:
Some fixes.
Something is added.
然后假设我做了一些更改,例如更改了序列化标准。所以我将我的 change.log 更新为:
Changed serialization standard.
当用户打开我的应用程序时,getChangeLog 函数将获取 change.log 文件,然后它会向用户显示包含此更改日志的对话框,因此用户将看到如下内容:
Changelog for v2.3.6:
* Changed serialization standard.
但由于某些奇怪的原因,这就是将要显示的内容:
Changelog for v2.3.6:
* Some fixes.
* Something is added.
它显示旧的change.log 我在python控制台中尝试了我的getChangeLog函数,它确实返回了旧的change.log,我什至尝试使用urlopen自己获取change.log文件,它仍然获得旧的。 最有趣的是,如果我调用 getChangeLog 几次,它就会开始返回新的 change.log
我很困惑,谁能解释我如何解决这个问题?
【问题讨论】:
标签: python-3.x urlopen