gpt4 book ai didi

python - 如何测试当前目录是否为 $HOME?

转载 作者:行者123 更新时间:2023-12-04 01:03:52 25 4
gpt4 key购买 nike

我正在将 shell 脚本转换为 Python 脚本,但在测试 IF 条件时遇到了一些问题。在此环境中,我们运行的是 Python 3.9.2。

我最初设置了 2 个变量(homeDir 和 curDir),创建一个 if-else 条件来测试变量是否相等。

运行脚本我 cd 到 $HOME 目录并运行 Python 脚本。

它总是打印“False”,即使控制台输出显示变量相等。

我希望脚本在 $HOME 目录中运行脚本时返回“Take Action ABC”。

显示输出的屏幕截图:
enter image description here

代码示例:

import os
from pathlib import Path

homeDir = Path.home()
curDir = os.getcwd()

print('DEBUG homeDir:', homeDir)
print('DEBUG curDir:', curDir)

if curDir == homeDir:
print('True')
else:
print('False')

最佳答案

你有不同类型的对象; homeDir 是一个 Path 对象,而 curDir 是一个 str。出于这个原因,它们不会比较相等,即使在语义上它们是相同的路径。使用一个或另一个模块,而不是混合使用 pathlibos。一种解决方案是更换

os.getcwd()

Path.cwd()

后者是 pathlib equivalent to os.getcwd() .

从我的当前目录是我的用户主目录调用的 Python 3.9 REPL 的示例:

>>> os.getcwd() == Path.home()
False
>>> Path.cwd() == Path.home()
True

关于python - 如何测试当前目录是否为 $HOME?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67171541/

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