我正在尝试使用python脚本来读取一个包含名称列表的文本文件,并基于这些名称创建文件夹。例如,如果文本文件中有“john_doe”和“jane_doe”,脚本应该创建两个文件夹。一个叫“约翰·杜”,一个叫“简·杜”。在
当我运行我的脚本时,我得到错误窗口错误:[error 123]文件名、目录名或列标签语法不正确:“,打开文件”名称.txt'模式'r'位于0X00000000025E6300>;”
下面是我正在运行的脚本:
import os
with open('names.txt') as x:
for line in x:
line = line.strip()
os.mkdir(str(x))
我认为这更像是一个Windows问题(因此出现了Windows错误),但我不确定如何解决它。有什么提示吗?在
而不是:
你的意思是:
^{pr2}$您甚至不需要
str()
,因为line
已经是str
。(我怀疑您添加它只是因为os.mkdir(x)
给了您一个错误。)之前的代码试图创建几个目录,所有目录都命名为“
<open file 'names.txt', mode 'r' at 0X00000000025E6300>
”。在名称之间的特殊字符和空格可能会出现问题。Windows不喜欢在多单词目录名之间转义空白。在
尝试(i)以Unicode格式读取行(以避免特殊字符问题),然后(ii)将名称与下划线连接起来,以避免出现空格问题:
通过以下方式检查当前工作目录:
您可能会发现您的程序可能没有适当的权限来更改目录。在
试着换成别的东西,比如:
^{pr2}$如果你发现程序可以在另一个目录上写/做更改,那么你可能需要更改程序的权限。在
相关问题 更多 >
编程相关推荐