[解決済み] WindowsでUnixの行末文字を書き込むには?
2023-06-01 09:23:25
質問
WindowsでPythonを使ってファイルに書き込み、Unixの行末文字を使うにはどうしたらよいでしょうか?
例:するとき。
f = open('file.txt', 'w') f.write('hellon') f.close()
Pythonは自動的に
\n
を
\r\n
.
どのように解決するのですか?
Python 2 & 3 の場合
参照してください。 現代的な方法: newline='' を使う。 の答えは、まさにこのページにあります。
Python 2 のみ (オリジナルの回答)
行末文字の変換を防ぐために、ファイルをバイナリで開きます。
f = open('file.txt', 'wb')
Pythonのマニュアルを引用しています。
Windowsでは、モードに 'b' を付加するとバイナリモードでファイルを開くので、'rb', 'wb', 'r+b' といったモードも存在します。Windows上のPythonは、テキストファイルとバイナリファイルを区別しています。テキストファイルの行末文字は、データの読み書きの際に自動的に少し変更されます。このファイルデータに対する舞台裏での変更は、ASCIIテキストファイルでは問題ありませんが、JPEGやEXEファイルのようなバイナリデータを破損させます。このようなファイルを読み書きするときは、バイナリモードを使用するように十分注意してください。Unix では、モードに 'b' を追加しても問題ないので、すべてのバイナリ ファイルに対してプラットフォームに依存せずに使用することができます。
関連
-
[解決済み] バイトを文字列に変換する
-
[解決済み] 最小限の驚き」と「変更可能なデフォルトの引数
-
[解決済み] Windowsにpipをインストールするにはどうしたらいいですか?
-
[解決済み] モジュールの関数名(文字列)を使って、モジュールの関数を呼び出す。
-
[解決済み] なぜC++はPythonよりもstdinからの行の読み込みが遅いのですか?
-
[解決済み] 最近のPythonでカスタム例外を宣言する適切な方法?
-
[解決済み] XMLを解析して、特定のノード属性のインスタンスをカウントするには?
-
[解決済み] Pythonでファイルの絶対パスを取得する方法
-
[解決済み] コマンドライン引数の読み方・処理方法は?
-
[解決済み] [Solved] .whlファイル付きのPythonパッケージをインストールする方法は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Jupyterノートブックでenv変数を設定する方法
-
[解決済み] PILからopenCVフォーマットへの変換
-
[解決済み] Djangoで2つの日付の間を選択する
-
[解決済み] Spyderを仮想環境で動作させるには?
-
[解決済み] タプルのリストを複数のリストに変換するには?
-
[解決済み] Pythonのargparseを使った隠し引数の作成
-
[解決済み] 古いバージョンのPythonにおける辞書のキーの並び順
-
[解決済み] tensorflowのCPUのみのインストールでダイナミックライブラリ 'cudart64_101.dll' を読み込めなかった
-
[解決済み] Pandasのデータフレーム内の文字列を'date'データ型に変換するにはどうしたらいいですか?
-
[解決済み] 認証プラグイン 'caching_sha2_password' はサポートされていません。