Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python os.makedirs错误地捕获macOS上目录的无扩展名文件_Python_Macos_Directory_File Extension - Fatal编程技术网

Python os.makedirs错误地捕获macOS上目录的无扩展名文件

Python os.makedirs错误地捕获macOS上目录的无扩展名文件,python,macos,directory,file-extension,Python,Macos,Directory,File Extension,我正在尝试创建与文件同名的目录。有一个文件:readme,它没有扩展名。它在声明文件存在的os.makedirs(目录)中被捕获 source=“用户/me/Desktop/parent” dirpath=['readme','index','robots'] def func(目录,源=源): directory=os.path.join(源,目录)# os.makedirs(目录) a=[func(目录)表示目录路径中的目录] >>>FileExistsError:[Errno 17]文件存

我正在尝试创建与文件同名的目录。有一个文件:
readme
,它没有扩展名。它在声明文件存在的
os.makedirs(目录)
中被捕获

source=“用户/me/Desktop/parent”
dirpath=['readme','index','robots']
def func(目录,源=源):
directory=os.path.join(源,目录)#
os.makedirs(目录)
a=[func(目录)表示目录路径中的目录]
>>>FileExistsError:[Errno 17]文件存在:'/Users/me/Desktop/parent/readme'
我用#将行改为:

directory=os.path.join(源代码,目录+“/”)
>>>NotDirectoryError:[Errno 20]不是目录:'/Users/me/Desktop/parent/readme/'
当存在同名的无扩展名文件时,如何创建目录

Python 3.7.3

事实证明,macOS对无目录文件和无扩展名文件的处理是一样的。我尝试将名为
readme
的文件夹移动到
parent
,但它拒绝了


如果这里有差异,它也可以用于创建吗?

目录只是特殊类型的文件。具体地说,它们只是文件,其中表示该文件是一个目录(请参阅位掩码)。例如,作为八进制数的目录模式通常可能是
0o40755
和常规文件
0o100644


在大多数文件系统(包括macOS)上,同一目录中可能没有同名的目录和常规文件,也可能没有包含路径分隔符的文件名。这与对象存储(例如)不同,对象存储实际上不是文件系统

请自行查看,无论是否指定尾部斜杠,都会采用相同的方法:

>>> import os
>>> os.makedirs("./example")
>>> os.stat('./example/').st_ino == os.stat('./example').st_ino
True

您可能没有带有“常规文件”的目录和常规文件?我把robots.txt
<代码>自述文件
不规则。具有相当具体的含义,表示不是目录、符号链接、特殊设备等。。它与文件名根本不相关。os.path.isfile(source++“/”+“readme”)True os.path.isfile(source++“/”+“readme/”)False os.path.isdir(source++“/”+“readme/”)False os.path.isdir(source++“/”+“readme”)False。对于可读性:不能利用这种差异吗?我建议您
print(os.path.isfile.\uuu doc\uuu)
看看它在那里实际做了什么。
>>> import os
>>> os.makedirs("./example")
>>> os.stat('./example/').st_ino == os.stat('./example').st_ino
True