我被困在使用python制作列表。
我想创建m x n个文件,例如file00.txt,file01.txt,...和file99.txt,但是当我尝试创建它时,它会显示一些错误。请让我帮忙。
filename = []
for i in range(0, sm):
filename.append('')
for j in range(0, sn):
filename[i].append('')
感谢。
答案 0 :(得分:4)
您可以尝试这样的事情:
filenames = []
for i in range(0, sm):
row = []
for j in range(0, sn):
row.append('') # I assume you want to do something more here
filenames.append(row)
答案 1 :(得分:0)
将i设置为0后,将empyty字符串附加为filename [0]。在行中的第二个for循环
filename[i].append('')
这意味着你实际上是打电话
''.append('')
所以你的错误应该是:
AttributeError: 'str' object has no attribute 'append'
提示:在提问时发布错误文本,尝试找出错误文本中有关错误的内容。
答案 2 :(得分:0)
filenames = []
for i in range(100):
filenames.append((str(i) if len(str(i)) > 1 else str(0) + str(i)) + ".txt")
最后,您的filenames
列表中将包含file00.txt,file01.txt,...和file99.txt。
filenames_mxn = []
for i in range(m):
filenames_i = []
for j in range(n):
filenames_i.append(filenames[i*n + j])
filenames_mxn.append(filenames_i)
现在,您的文件存储在m x n
矩阵中。
答案 3 :(得分:0)
同类物品的多维列表有点无意义。 尝试简单的简单列表,它易于制作且易于使用:
>>> filenames = ['file' + i + j + '.txt' for i in '0123456789' for j in '0123456789']
>>> filenames
['file00.txt', 'file01.txt', 'file02.txt', ..skipped.. 'file97.txt', 'file98.txt', 'file99.txt']