Pythonのascii()関数とは?使い方と実行例をわかりやすく解説
このチュートリアルでは、Pythonの組み込み関数であるascii()について詳しく解説します。ascii()は、オブジェクトをASCII文字だけで表現できる文字列に変換したいときに便利な関数です。
ascii(object)の基本構文
ascii(object)関数は引数を1つ受け取り、そのオブジェクトの「印字可能な(printable)表現」を文字列として返します。
具体的には、文字列やリストなどのオブジェクト内に含まれる非ASCII文字(アクセント記号付きのアルファベット、特殊記号など)を、エスケープシーケンス(\x、\u など)に自動的に置き換えて返します。ASCII文字のみで構成される場合は、repr()と同じ結果になります。
使用例1:非印字可能な文字を変換する
# 印字可能なASCII範囲外の文字を初期化 string = '¢' # ascii(object)を使って上記の文字を出力 print(ascii(string))
出力結果
上記のコードを実行すると、次のような結果が得られます。
'\xa2'
セント記号「¢」はASCII範囲外の文字のため、エスケープシーケンス \xa2 に置き換えられて出力されていることがわかります。
使用例2:複数の特殊文字を含む文字列の変換
# ASCII範囲外の文字を含む文字列を初期化 name = 'HÃFÆËŽ' # ascii(object)を使って上記の文字列を出力 print(ascii(name))
出力結果
上記のコードを実行すると、次のような結果が得られます。
'H\\xc3F\\xc6\\xcb\\u017d'
この例では、「Ã」「Æ」「Ë」は2バイトのエスケープシーケンス(\xc3、\xc6、\xcb)に、「Ž」のようにコードポイントが大きい文字はUnicodeエスケープ(\u017d)にそれぞれ変換されています。
使用例3:リストに対してascii()を使う
# 特殊文字を含む複数の文字列からなるリストを初期化 strings = ['HÃFÆËŽ', '®', '©Òpy'] # ascii(object)を使ってリスト全体を出力 print(ascii(strings))
出力結果
上記のコードを実行すると、次のような結果が得られます。
['H\\xc3F\\xc6\\xcb\\u017d', '\\xae', '\\xa9\\xd2py']
リストを渡した場合も、各要素に含まれる非ASCII文字がすべてエスケープシーケンスへと変換されます。登録商標マーク「®」は \xae、著作権記号「©」は \xa9 として表現されています。
まとめ
ascii()関数は、オブジェクト内の非ASCII文字をエスケープシーケンスに置き換えた文字列を返す便利な組み込み関数です。デバッグ時の文字列出力や、ASCII環境での安全なデータ表示などに活用できます。本チュートリアルについて不明な点がある場合は、コメント欄でお気軽にお尋ねください。
-
Pythonで単利(シンプルインタレスト)を計算する方法をわかりやすく解説
本記事では、Python 3.xを使って単利(シンプルインタレスト)を計算する方法について詳しく解説します。金融計算の基礎となる単利の概念から、実際のコード実装まで、初心者の方にもわかりやすいように順を追って説明していきます。 単利とは? 単利とは、元本に対してのみ利息が発生する計算方式です。複利と異なり、発生した利息が次期の元本に加算されないため、計算式がシンプルなのが特徴です。 単利は「1日あたりの利率 × 元本 × 支払いまでの経過日数」を掛け合わせることで求められます。 単利の計算式 数学的には、以下の公式で表されます。 単利(SI)=(P × T × R)÷ 100 各変数の意味は次
-
Pythonで学ぶ選択ソートの基本原理と実装方法をわかりやすく解説
本記事では、選択ソート(Selection Sort)の基本的な仕組みと、Python 3.xでの実装方法について詳しく解説します。 選択ソートとは? 選択ソートは、ソートされていない部分から最小値の要素を繰り返し見つけ出し、それを先頭に移動させることで配列全体を整列していくアルゴリズムです。処理の過程では、与えられた配列が次の2つの部分配列に分けられます。 すでにソートが完了している部分配列 まだソートされていない部分配列 選択ソートの各イテレーション(反復処理)では、未ソート部分から最小要素を取り出し、ソート済み部分の末尾に挿入していきます。この操作を繰り返すことで、最終的に配列全体