Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonのascii()関数とは?使い方と実行例をわかりやすく解説

ASCIIは「American Standard Code for Information Interchange(アメリカ標準情報交換コード)」の略称で、文字をコンピュータ上で表現するための文字エンコーディング規格です。たとえば、英字アルファベットの「A」に対応するASCII値は65です。

Pythonには、オブジェクトを印字可能な(printable)形式で取得するための組み込み関数 ascii() が用意されています。この関数は引数を1つだけ受け取り、リスト、文字列、タプルなど任意のオブジェクトを指定できます。戻り値は、非ASCII文字が \x\u\U のいずれかのエスケープシーケンスに置き換えられた文字列表現になります。

構文

ascii() 関数の基本的な構文は以下のとおりです。

ascii(object)

使用例

ここでは、単一の文字を含む文字列と、複数の文字を含む文字列に対して ascii() を適用してみます。ギリシャ文字などの非ASCII文字がどのようにエスケープされるかを確認できます。

# 単一の文字の場合
print(ascii("Ω"))
print(ascii("θ"))

# 複数の文字を含む文字列の場合
print(ascii("TΨtΦrial"))

実行結果

上記のコードを実行すると、次のような出力が得られます。

'\u03a9'
'\u03b8'
'T\u03a8t\u03a6rial'

ポイントまとめ

  • ascii() はオブジェクトの印字可能な文字列表現を返す組み込み関数である
  • 非ASCII文字は \x\u\U 形式のエスケープシーケンスに変換される
  • 引数には文字列だけでなく、リストやタプルなども指定できる
  1. Pythonで共通しない文字のみを連結した文字列を作成する方法

    この記事では、2つの文字列が与えられたときに、まず一方の文字列から両方に共通する文字をすべて取り除き、続いてもう一方の文字列にのみ含まれる文字を、前者にのみ含まれる文字と連結して新しい文字列を作成する方法を解説します。 具体例 入力 >> 文字列1:AABCD     文字列2:MNAABP 出力 >> CDMNP この例では、「A」と「B」が両方の文字列に共通しているため除外されます。残った文字列1側の「C」「D」と、文字列2側の「M」「N」「P」を連結すると、最終的な出力は「CDMNP」になります。 アルゴリズム uncommonstring(s1, s2)

  2. Pythonで文字列がASCIIのみで構成されているかどうかを確認する方法

    Pythonで文字列がすべてASCII文字だけで構成されているかどうかを判定したい場面は少なくありません。ここでは、代表的な2つの方法をわかりやすく解説します。 方法1:all()とord()を使って1文字ずつチェックする 最もシンプルな方法は、文字列内の各文字を順番に調べ、その文字コード(Unicodeコードポイント)が128未満であるかを確認することです。ASCIIは0〜127のコードポイントで定義されているため、すべての文字がこの範囲内であれば、その文字列はASCIIのみで構成されていると判断できます。 def is_ascii(s): return all(ord(c) <