私はPythonを使用してリストを作成することに固執しています。
File00.txt、file01.txt、...、file99.txtなどのm x nファイルを作成したいのですが、作成しようとするとエラーが発生します。手伝わせてください。
filename = []
for i in range(0, sm):
filename.append('')
for j in range(0, sn):
filename[i].append('')
ありがとう。
あなたはこのようなことを試すことができます:
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)
iを0に設定した後、filename [0]として空の文字列を追加します。行の2番目のforループ
filename[i].append('')
これはあなたが実際に電話することを意味します
''.append('')
したがって、エラーは次のようになります。
AttributeError: 'str' object has no attribute 'append'
ヒント:質問をするときはエラーテキストを投稿し、エラーテキストがエラーについて何を言っているかを理解してください。
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
マトリックスに保存されました。
同じ種類のアイテムの多次元リストは少し意味がありません。シンプルなプレーンリストを試してみてください。作成と使用が簡単です。
>>> 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']