文字列のバイトサイズを決定する

PythonPythonBeginner
オンラインで実践に進む

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

Python では、文字列は文字のシーケンスです。文字列の各文字は一定量のメモリを占有します。文字列が占有するメモリ量はそのバイトサイズと呼ばれます。このチャレンジでは、文字列を入力として受け取り、そのバイトサイズを返す関数を書きます。

文字列のバイトサイズ

文字列sを入力として受け取り、そのバイトサイズを返す関数byte_size(s)を書きます。文字列のバイトサイズは、メモリに文字列を格納するために必要なバイト数です。文字列をバイトサイズに変換するには、特定のエンコード方式を使用して文字列をエンコードする必要があります。この実験では、UTF-8 エンコード方式を使用します。

文字列をバイトサイズに変換するには、次の手順に従います。

  1. UTF-8 エンコード方式を使用して文字列をエンコードします。
  2. エンコードされた文字列の長さを取得します。

関数は、エンコードされた文字列の長さを返す必要があります。

def byte_size(s):
  return len(s.encode('utf-8'))
byte_size('😀') ## 4
byte_size('Hello World') ## 11

まとめ

このチャレンジでは、Python で文字列のバイトサイズを計算する方法を学びました。文字列を入力として受け取り、UTF-8 エンコード方式を使用して文字列をエンコードし、エンコードされた文字列の長さを取得することで、そのバイトサイズを返す関数を書きました。