【Python】ASCIIコードによる数値と文字列を変換する方法(ord, chr関数)

アイキャッチ

今回は、ord関数やchr関数などのPythonの組み込み関数を用いて、ASCIIコードを使って数値と文字列を自由に変換する方法を解説します。

無料の説明会を有効活用しよう!

独学の学習は孤独感を感じやすく挫折してしまう初心者も多いです。それでもなんとかPythonを効率よく学びたいという方は適性を知るためにもまずは無料説明会を利用しましょう。

ASCIIコードとは

コンピュータは「0」か「1」の2進数しか扱えません。しかし、本記事を読んでわかるように、日本語や英数字といった様々な文字が画面に表現されています。

これは、2進数で示されたある特定の数字が、それに対応する文字をコンピュータ上で表現しているからです。

この数字と文字の対応を文字コードといい、現代のコンピュータではどの数字とどの文字とを、対応付けるかを決定された文字コードが存在します。また、ASCIIコードとは、日本語を除いた記号やアルファベットの対応を一覧にしたものをいいます。

過去にはASCIIコードを用いた暗号文の作成や暗号学的に強いパスワードの生成方法を解説していますのでよろしければ参考にしてみてください!

参考:【Python】乱数を使って適当な暗号文を作成する方法(復号化不可)
参考:【Python】secretsモジュールを用いたパスワードの作成

ord関数について

ここからはPythonのお話しです!

ASCIIコードによって割り振られている特定の数字を確認するためには「ord」関数を用います。

なぜ「ord(“A”)」が65になるのかは、先ほどのASCIIコード表を確認するとわかると思います。

また、「B」の次の「C」は番号順になっているので当然「67」となります!

文字列に対してもord関数を用いて振り分けられている番号を確認することができ便利です。

chr関数について

特定の数字に対応する文字を確認するためには「chr」関数を用います。

数字についても確認しよう!

ここで気を付けたいのは、見た目は数字ですが、文字コードでは文字列として扱われるということです。

数値として使いたい場合には型のキャスト(変換)を行いましょう。

ASCIIコード表を作ってみよう

math

ソースコード

今回は、「for」文を用いてループをするだけのコードです。

出力結果をすべて掲載するわけにはいかないので、英数字に限り表でまとめました。

コンソールなどに文字が印字されない箇所があると思いますが、そこにはコンピュータ上で識別される制御文字や識別子が対応しています。

数字

10進数16進数ASCII
480x300
490x311
500x322
510x333
520x344
530x355
540x366
550x377
560x388
570x399

大文字のアルファベット

10進数16進数ASCII
650x41A
省略省略省略
900x5aZ

一部省略しています。

小文字のアルファベット

10進数16進数ASCII
970x61a
省略省略省略
1220x7az

最初の表を見ればすべて確認できます。

まとめ

最後まで読んでいただきありがとうございます!

今回は、Pythonでord関数やchr関数などを用いて、ASCIIコードによる数値と文字列を自由に変換する方法を解説しました。

それぞれの関数の使い方や、コンピュータ上で扱われているASCIIコードについて少しでも理解していただけたのなら幸いです。

過去にはASCIIコードを用いた暗号文の作成や暗号学的に強いパスワードの生成方法を解説していますのでよろしければ参考にしてみてください!

参考:【Python】乱数を使って適当な暗号文を作成する方法(復号化不可)
参考:【Python】secretsモジュールを用いたパスワードの作成

無料の説明会を有効活用しよう!

独学での学習は孤独感を感じやすく挫折してしまう初心者も多いです。また、参考書を購入しても全く読む気にならないという方も多いはずです。

それでも、なんとかPythonの勉強を行い、高スキルなエンジニアを目指したいという方は無料で受けられるオンライン説明会に参加してみることも一つの手です。

Pythonというプログラミング言語は機械学習の人気の高まりなどもあり、様々なスクールが無料説明会を開催しています。

その中でも「Freeks(フリークス)|業界初!10,780円のサブスク型プログラミングスクール」がオススメです。Pythonを効率よく学びたいという方はまずは適性を知るためにも無料説明会を利用しましょう。

無料説明会を参加してみる!

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA