Python os.path.abspath doen';t返回正确的路径
它的行为与我的不同,除了:Python os.path.abspath doen';t返回正确的路径,python,Python,它的行为与我的不同,除了: def main(): print(os.path.abspath(sys.argv[1])) print(os.path.dirname(os.path.realpath(__file__))) 此代码的输出为: /cs/我的用户/想要的路径 /cs/my_用户/桌面/项目 实际上,它只是跳过了我当前工作目录后面的两个文件夹。只需使用 这会将相对路径转换为绝对路径,同时保留已存在的绝对路径不变。这属于绝对路径,取决于您当前的工作目录,而不是调用模块
def main():
print(os.path.abspath(sys.argv[1]))
print(os.path.dirname(os.path.realpath(__file__)))
此代码的输出为:
/cs/我的用户/想要的路径
/cs/my_用户/桌面/项目
实际上,它只是跳过了我当前工作目录后面的两个文件夹。只需使用
这会将相对路径转换为绝对路径,同时保留已存在的绝对路径不变。这属于绝对路径,取决于您当前的工作目录,而不是调用模块所在的目录。我尝试了这一方法,但奇怪的是,它没有保留最后一个文件夹(当python脚本和arg路径位于同一文件夹中时)@SuperMario提供了一个问题示例,请记住“相对”路径通常定义为相对于工作目录,而不是相对于脚本。是否要执行后者?
def main():
filename = os.path.abspath(sys.argv[1])