2013-04-24 183 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)