gpt4 book ai didi

python - 为什么 python 脚本在 Spyder 与 cmd 提示符中的工作方式不同

转载 作者:行者123 更新时间:2023-12-01 02:56:00 34 4
gpt4 key购买 nike

我有以下脚本test.py:

import pathlib, os

path = "C:\\Windows"
pathparent = pathlib.Path("C:\\Windows").parent

if os.path.exists(pathparent):
print("path exists")

当我在 Spyder IDE 中执行它时,我得到:

path exists

当我从命令提示符运行它时(python test.py)我得到这个:

Traceback (most recent call last):
File "test.py", line 6, in <module>
if os.path.exists(pathparent):
File "C:\Anaconda3\lib\genericpath.py", line 19, in exists
os.stat(path)
TypeError: argument should be string, bytes or integer, not WindowsPath

知道为什么我会得到不同的结果吗?

注意:我知道将 pathparent 包裹在 str() 中将使 if 语句成功,但我想知道的是为什么两种环境产生不同的结果。

最佳答案

os.path.exists() 开始接受 Python 3.6 中的路径对象,并且您的问题出现在运行 Python 3.5 时的 cmd 提示中,请将其更改为 3.6 以解决您的问题。

关于python - 为什么 python 脚本在 Spyder 与 cmd 提示符中的工作方式不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44219402/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com