コードを続行する方法は疑問があります。フォルダからすべてのファイルを取り出し、別のテキスト形式で1つのファイルにマージする必要があります。出力ファイルは、このような行でなければなりませんフォルダ内のtxtファイルをマージしてPythonの文字を置換する
"{'nr': '3173391045', 'data': '27/12/2017'}"
"{'nr': '2173391295', 'data': '05/01/2017'}"
"{'nr': '5173351035', 'data': '07/03/2017'}"
:
例:
入力ファイルは、このようなテキストフォーマットである
"3173391045","27/09/2017"
"2173391295","05/01/2017"
"5173351035","07/03/2017"
これだ、私の作業コードですマージと空白行の取り出しの作業
import glob2
import datetime
filenames=glob2.glob("*.txt")
with open(datetime.datetime.now().strftime("%Y-%m-%d-%H-%M-%S-%f")+".SAI", 'w') as file:
for filename in filenames:
with open(filename,"r") as f:
file.write(f.read())
私は.replaceで何かをしようとしているが、動作していない、私は
構文エラーまたは空白のファイルを取得filedata = filedata.replace("{", "") for line in filedata
'JSONを使用する:あなたは、常に
ast.literal_eval
は一切変更することなくすることができ、json
は、これらの行を読み取ることができない場合でも、そして、この場合には...など、区切り文字を含むデータにカンマがつまずく可能性あなたの入力文字列を辛抱強く解析するのではなく、各行を辞書に読み込むために.loadsを使います。 –
@ Jean-FrançoisFabre:残念ながら、行は有効なjson形式ではありません。文字列は一重引用符で囲まれ、jsonは二重引用符が必要です。 –
thats chalenge! –