We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 69ab21b commit eb09814Copy full SHA for eb09814
os/os/__init__.py
@@ -92,19 +92,21 @@ def rmdir(name):
92
check_error(e)
93
94
def makedirs(name, mode=0o777, exist_ok=False):
95
- exists = access(name, F_OK)
96
- if exists:
97
- if exist_ok:
98
- return
99
- raise OSError(errno_.EEXIST)
100
s = ""
101
- for c in name.split("/"):
+ comps = name.split("/")
+ if comps[-1] == "":
+ comps.pop()
+ for i, c in enumerate(comps):
102
s += c + "/"
103
try:
104
- mkdir(s)
+ uos.mkdir(s)
105
except OSError as e:
106
if e.args[0] != errno_.EEXIST:
107
raise
+ if i == len(comps) - 1:
+ if exist_ok:
108
+ return
109
+ raise e
110
111
if hasattr(uos, "ilistdir"):
112
ilistdir = uos.ilistdir
0 commit comments