![](/img/trans.png)
[英]how to copy files to users home directory or current directory using distutils?
[英]How to test if current directory is $HOME?
我正在将 shell 脚本转换为 Python 脚本,并且在测试 IF 条件时遇到了一些问题。 在此环境中,我们正在运行 Python 3.9.2。
我最初设置了 2 个变量(homeDir 和 curDir),创建一个 if-else 条件来测试变量是否相等。
运行脚本我 cd 到 $HOME 目录并运行 Python 脚本。
它总是打印“False”,即使控制台 output 显示变量相等。
在 $HOME 目录中运行脚本时,我希望脚本返回“Take Action ABC”。
代码示例:
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
object,而curDir
是一个str
。 因此,即使在语义上它们是相同的路径,它们也不会比较相等。 使用一个或另一个模块,而不是混合pathlib
和os
。 一种解决方案是更换
os.getcwd()
和
Path.cwd()
来自 Python 3.9 REPL 的示例从我的当前目录是我的用户主目录调用:
>>> os.getcwd() == Path.home()
False
>>> Path.cwd() == Path.home()
True
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.