関数間で情報やデータを保存したり交換するために、たくさんの一時ファイルを生成する古いスクリプトを書き直しています。ファイルを生成する際のオーバーヘッドを避けるために、それらを変数として保持したい。Python 2.7の文字列の 'join'とファイルの 'read binary'の比較
私の問題:私は2つのファイルがこのコードを使用してバイナリレベルでマージされている機能に遭遇しました:
with open(first_file, "ab") as file1, open(second_file, "rb") as file2:
file1.write(file2.read())
私は文字列を使用して、同じことをしたいと思っと」.join'関数のようにこれは:
first_file = ''.join([first_file, second_file])
私の質問:「読み込みバイナリ」と同じですか?あるいは、 'バイナリ読み出し'モードは.joinにも適用されますか?
私が作業しているデータはバイナリなので、単純な '読み取り'コマンドは内容を変更する可能性があります。
は、これまでのところ私は、公式Pythonドキュメントでこの情報を見つけました:Windows上
Pythonは、テキストとバイナリファイルを区別します。 テキストファイルの行末の文字は、データの読み書き時に自動的に変更されます( )。この背後にあるシーン は、ASCIIテキストファイルでは問題ありませんが、 ではJPEGやEXEファイルのようなバイナリデータが破損しています。小規模なテストを作る
コードを試してみて、どちらの場合でも結果が同じかどうかを確認してみませんか? – GPhilo
私はまだ完全なリワークを完了していないので、この機能を動作させるには多くの回避策が必要です。また、私はいくつかの理論上の背景を望んで、機能をうまく解消することを望んだ。これまでのところ私はインターネット上の私の質問に関しては何の情報も見つけていない。 – redscale
スタブが必要なのは、2つのファイル "a.txt"と "b.txt"を作成し、両方に何かを書き、ファイルに投稿した行を実行して結果が一致するかどうかを確認してください – GPhilo