文字のバイト数の確認の方法です。
文字のバイト数
例えば、「あ」という全角ひらがなは何バイトですか?
答えは3バイトです。
例えば、「ア」という半角カタカナは何バイトですか?
答えは3バイトです。
といったことは基本的なことですが、実際にプログラムを書いて調べてみようという訳です。
サンプルコード
sentence0 = "あ"
sentence1 = "ア"
sentence2 = "a"
sentence3 = "1"
sentence4 = "11"
print(len(sentence0.encode("utf8")))
print(len(sentence1.encode("utf8")))
print(len(sentence2.encode("utf8")))
print(len(sentence3.encode("utf8")))
print(len(sentence4.encode("utf8")))
文字列の変数に .encode(“utf8”) を追記します。
上記の出力結果は以下になります。
3
3
1
1
2
日本語は3バイトと覚えておいた方がいいですね。
フランス語、ドイツ語は?
アルファベットは1バイトというのはわかりましたが、フランス語、ドイツ語の特殊文字はどうでしょうか?
フランス語の「ç(セディーユ)」、ドイツ語の「ß(エスツェット)」で確認してみます。
日付のセルが datetime.datetime(2023, 1, 1, 0, 0) となっています。この場合、文字列として読み込む場合は str を使用します。
sentence0 = "ç"
sentence1 = "ß"
print(len(sentence0.encode("utf8")))
print(len(sentence1.encode("utf8")))
出力結果は以下のようになります。
2
2
フランス語、ドイツ語の特殊文字は2バイトということになります。参考まで。
コメント