1
私は、ファイルの複数のカップルとフォルダを持っている:私は、同時にファイルのカップル(A.TXTとa.json)を開きたいループのために使用pythonで同じ名前と異なる拡張子を持つ2つのファイルを同時に開く方法は?
:上
a.txt
a.json
b.txt
b.json
ので。
Pythonで 'with'ステートメントを使用する方法はありますか?
私は、ファイルの複数のカップルとフォルダを持っている:私は、同時にファイルのカップル(A.TXTとa.json)を開きたいループのために使用pythonで同じ名前と異なる拡張子を持つ2つのファイルを同時に開く方法は?
:上
a.txt
a.json
b.txt
b.json
ので。
Pythonで 'with'ステートメントを使用する方法はありますか?
あなたは、ファイル名sans拡張子でキーを付けられた辞書を構築し、必要な拡張子に一致するファイルの数をカウントすることで、次のようなことができます。次に、辞書のファイルペアを繰り返し処理することができます。
import os
from collections import defaultdict
EXTENSIONS = {'.json', '.txt'}
directory = '/path/to/your/files'
grouped_files = defaultdict(int)
for f in os.listdir(directory):
name, ext = os.path.splitext(os.path.join(directory, f))
if ext in EXTENSIONS:
grouped_files[name] += 1
for name in grouped_files:
if grouped_files[name] == len(EXTENSIONS):
with open('{}.txt'.format(name)) as txt_file, \
open('{}.json'.format(name)) as json_file:
# process files
print(txt_file, json_file)
ありがとうmhwake !!!それは正しく動作します! – CosimoCD
事前にファイル名を知っていますか、ディレクトリから読み込んでいますか?達成しようとしていることを具体的に説明できますか? – Mureinik
実際の問題が何であるかはっきりしません。ファイル名のペアを見つける?ファイルを開く?一度に 'with'を使って複数のファイルを開く方法は次のとおりです:http://stackoverflow.com/questions/4617034/how-can-i-open-multiple-files-using-with-open-in-python/4617069#4617069 –
はい私は事前にファイル名を知っています。彼らは同じ名前のカップルのシリーズですが、異なる拡張子です。私は、カップルで同じ名前であるが異なる拡張子を持つカップルを開かなければならない。 – CosimoCD