猿问

断言 os.path.isfile 仅适用于完整路径

我接到了一项教育作业,在此期间我编写了 Gherkin 场景以使用 Python 3.6、Splinter 和 Behave 测试网站。我取得了一些相当不错的进步,但我被困在这件小事上。目前,我已经成功地通过 Ubuntu 中的 Chrome 无头实例下载了一个文件。但是,为了通过场景的最后一步,我需要验证文件的存在。经过大量搜索,我找到了一种有效的方法,即:

assert os.path.isfile('/home/[USERNAME]/Downloads/file.csv')

但是,为了使此测试与其他计算机更兼容,我希望文件的路径更短更简单。最重要的是,不要使用这个系统的用户名。

我对这一切都很陌生,所以这很可能是一个愚蠢的问题,但我一直在到处搜索,我根本找不到答案。


Helenr
浏览 336回答 1
1回答

四季花海

您可以使用~which 替换重写路径/home/[USERNAME]/,因此它将变为~/Downloads/file.csv. 然后,您可以os.path.expanduser()按如下方式使用 Python 的函数:assert os.path.isfile(os.path.expanduser('~/Downloads/file.csv'))os.path.expanderuser()将自动/home/[USERNAME]/为您扩展它。
随时随地看视频慕课网APP

相关分类

Python
我要回答