2013-04-24 121 views
1

我正在嘗試使用以下代碼創建文件夾。東西是不正確的,並導致錯誤:使用python創建新文件夾

「類型錯誤:‘海峽’對象不是可調用的」

import os, sys 

a= [4,3,2,1] 
print len(a) 
for idx in range (len(a)): 

    newpath = r'E:\test\tool\folder_%s'(idx) 
    if not os.path.exists(newpath): os.makedirs(newpath) 

使用os.makedirs我可以創建文件夾。但是,我無法在循環後綴這些文件夾。任何想法都可能有幫助。謝謝。

+3

我想你以前'(IDX)'忘了後弦了''%。 – squiguy 2013-04-24 06:57:51

+0

對不起。那太愚蠢了。請忽略這個問題。 orignal代碼很大,我似乎忽略了那個%意外刪除了 – user741592 2013-04-24 07:01:27

+3

這是一個非常奇怪的方式來循環通過0,1,2,3。 – wim 2013-04-24 07:02:13

回答

3
import os, sys 

a= [4,3,2,1] 
print len(a) 
for idx in range (len(a)): 

    newpath = ((r'E:\test\tool\folder_%s') % (idx)) 
    if not os.path.exists(newpath): os.makedirs(newpath) 

嘗試,如果有幫助,接受了答案,如果不發表評論,我會刪除它。

1
newpath = r'E:\test\tool\folder_%s' % (idx) 
0

我認爲製作字符串的首選方法是使用格式化方法。

newpath = 'E:\test\tool\folder_{0}'.format(idx) 
+0

這有什麼問題?我錯了嗎? – squiguy 2013-04-24 07:06:58

+0

我看不出有什麼問題+1 – jamylak 2013-04-24 07:16:19

1

此代碼將創建一個名稱client_1001測試的文件夾client_1500測試

import os, sys 

for i in range(1001, 1500): 
    newpath = ((r'/tmp/fileSet/client_%s-test') % (i)) 
    if not os.path.exists(newpath): os.makedirs(newpath)