当我运行代码时,它说"TypeError: unlink() got an unexpected keyword argument 'missing_ok'"



这是我的代码。它是我的程序中所拥有的一切:

from pathlib import Path
new_dir = Path.home() / "new_directory"
file_path = new_dir / "program2.py"
file_path.unlink(missing_ok=True)

program2.py文件不存在;这就是为什么我想将missing_ok参数设置为True,这样它就不会引发FileExistsError。但是每次我运行代码时,它都会给我以下消息:

file_path.unlink(missing_ok=True)
TypeError: unlink()得到了一个意外的关键字参数'missing_ok'

我有一个过时的python版本,或者我在代码中犯了一个错误,帮助将非常感激!

missing_ok参数只在python3.8上被添加到Path.unlink。如果你想使用这个参数,你应该将python升级到新版本。

您可以使用python -V

命令检查python版本

正如napuzba的回答,missing_ok仅在python 3.8或更高版本上可用。

如果你仍然需要使用python 3.7或以下版本,你可以这样做:

if file_path.exists():
file_path.unlink()

如果你想捕获异常:

try:
file_path.unlink()
except FileNotFoundError:
pass # maybe do something here

我的问题是我使用os.unlink()而不是pathlib.Path.unlink()

相关内容

最新更新