ホームページ >バックエンド開発 >Python チュートリアル >Python 3 でバイトを文字列に変換するにはどうすればよいですか?

Python 3 でバイトを文字列に変換するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2025-01-03 16:52:40904ブラウズ

How Can I Convert Bytes to a String in Python 3?

Python 3 でバイトを文字列に変換する

この質問は、外部プログラムまたは入力ストリームからキャプチャされたデータを処理するときに発生します。このようなデータを印刷やさらなる処理のために通常の Python 文字列としてエンコードしたいと考えています。

次のバイト オブジェクトを考えます:

>>> from subprocess import *
>>> stdout = Popen(['ls', '-l'], stdout=PIPE).communicate()[0]
>>> stdout
b'total 0\n-rw-rw-r-- 1 thomas thomas 0 Mar  3 07:03 file1\n-rw-rw-r-- 1 thomas thomas 0 Mar  3 07:03 file2\n'

印刷用に文字列に変換するには、バイトをデコードします。適切なエンコーディングを使用します:

>>> stdout.decode("utf-8")
'-rw-rw-r-- 1 thomas thomas 0 Mar  3 07:03 file1\n-rw-rw-r-- 1 thomas thomas 0 Mar  3 07:03 file2\n'

UTF-8 は一般的なエンコーディングですが、実際のエンコーディングと一致するエンコーディングを使用することが重要です。 データ。そうしないと、出力が文字化けしたり、不正確になったりする可能性があります。

以上がPython 3 でバイトを文字列に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。