【问题标题】:Python os.chdir() not changing directoryPython os.chdir() 不改变目录
【发布时间】:2017-10-22 15:09:05
【问题描述】:

所以,我正在学习一个简单的教程“Python 教程:自动解析和重命名多个文件”,并且已经遇到了 os.chdir() 不起作用的问题。我在 Windows 10 系统上,运行 python 3.6,我尝试在 Windows 上使用我的常规终端(安装了 cygwin)和 bash 上的 ubuntu。

代码如下:

import os

print(os.getcwd())

os.chdir('c:/Users/Michelle Kaiser/Desktop/Lab_Progs/PI3Kalpha')

print(os.getcwd())

这里是注册终端:

C:\Users\Michelle Kaiser\Desktop\Lab_Progs>python rename.py
C:\Users\Michelle Kaiser\Desktop\Lab_Progs

C:\Users\Michelle Kaiser\Desktop\Lab_Progs>`

它返回的路径对应于我的程序所在的文件夹。我已移动程序 3 次以验证这一点。此外,它显然只返回一次路径,因此它可能没有响应 2 个打印语句。

这里是 bash 终端:

mkaiser@ZIPPY:/mnt/c/Users/Michelle Kaiser/Desktop/Lab_Progs$ python rename.py
/mnt/c/Users/Michelle Kaiser/Desktop/Lab_Progs
mkaiser@ZIPPY:/mnt/c/Users/Michelle Kaiser/Desktop/Lab_Progs$

我还尝试使用os.path.exists() 运行代码,这并没有改变任一终端上的输出。我确实仔细检查了我正在将我的程序文件从一个测试保存到下一个测试。谢谢。

【问题讨论】:

  • 您能用os.path.exists() 显示您的代码吗?它只打印一行,所以看起来你的 os.chdir() 失败了
  • 您有两个打印语句,但只有一个打印行。这看起来很可疑。
  • 我当然同意,但这并没有让我产生任何更好的想法。除了检查我是否点击了保存。
  • 代码:import os os.path.exists('c:/Users/Michelle Kaiser/Desktop/Lab_Progs/PI3Kalpha') print(os.getcwd()) 终端:C:\Users\Michelle Kaiser\Desktop\Lab_Progs>python rename.py C:\Users\Michelle Kaiser\Desktop\Lab_Progs C:\Users\Michelle Kaiser\Desktop\Lab_Progs>
  • 所以,基本上没有变化。我还在头脑风暴这件事。由于我正在使用操作系统进行操作,我的双启动会导致问题吗?这是我的第一次双启动,我只用了几个月。 (它在 /etc/ 中的一些文件有一些奇怪的问题,但我相信我已经解决了所有这些问题。)

标签: python bash operating-system


【解决方案1】:

我一直在尝试更改没有空格的文件。

这个人好像也有类似的问题:

Python reading whitespace-separated file lines as separate lines

【讨论】:

  • 如果与您的问题相似,为什么不尝试此解决方案。你需要放一些和平的代码,你需要给你的问题加上标签。
  • 好的。所以,虽然这个线程解决了我希望得到的稍后一点,但我仍然只是试图让终端以完整路径响应。它应该在路径末尾有最终文件夹“/PI3Kalpha”。然后,下一步是让我的程序列出该文件夹中的所有文件。所以,我根本不需要创建目录。如果我在您链接的线程中忽略了您的观点,请帮帮我。
  • 我想我明白了。我已将目录更改为没有空间。天哪。花了一段时间才听到你的声音。谢谢!
猜你喜欢
  • 1970-01-01
  • 2023-01-11
  • 1970-01-01
  • 1970-01-01
  • 2020-08-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多