Tkinterの勉強をするために文字列をASCIIコードに変換するアプリを作ってみました。
参考サイト
以下のサイトでTkinterの基礎の基礎を勉強させていただきました。ありがとうございます。
ゼロからはじめるPython(46) Pythonでデスクトップアプリ作成入門 - Tkinterで肥満判定ツールを作ろう
Pythonには、標準でWindows/macOS/Linuxのデスクトップ向けアプリを作成するTkinterというライブラリが備わっている。このライブラリを使うと、ボタンやエディタなどGUIを持つアプリを作ることができる。今回は、デスクト...
参考サイトではウィンドウにHello, World!の表示をするアプリから身長と体重を入力したらBMI指数を返してくれるアプリまでの作り方を説明してくれています。
今回はこれらを応用して、入力した文字列をASCIIコードに変換するアプリを作ってみます。上記サイトを見てから本記事を見ることをオススメします。
目標
Tkinterで文字列をASCIIコードに変換するアプリを作る
コードの全容
以下のコードをDesktop上の「Python」フォルダに保存しました。
import tkinter as tk
def trans_ascii():
#ASCIIコードに変換するための関数を定義
letter=textletter.get()
ascii_list=[str(ord(letter[i])) for i in range(len(letter))]
ascii=','.join(ascii_list)
labelresult['text']=ascii
win = tk.Tk()
#ウィンドウを作成
win.title('ASCIIコードへ変換')
win.geometry('500x250')
labelletter=tk.Label(win,text=u'ASCIIコードへ変換したい文字列')
labelletter.pack()
textletter=tk.Entry(win)
#入力ボックスを作成
textletter.insert(tk.END,'ここに文字列を入力')
#初期値に'ここに文字列を入力'を入れておく
textletter.pack()
labelresult=tk.Label(win,text=u'---')
labelresult.pack()
transbutton=tk.Button(win,text=u'変換')
transbutton['command']=trans_ascii
transbutton.pack()
win.mainloop()
表示させるウィンドウのサイズを決める部分は以下の部分です。
win.geometry('500x250')
ウィンドウサイズを画面いっぱいに最大化させて表示させたい場合は、以下のようにコードを書き換えてください。
win.state('zoomed')
動作画面
Anaconda Prompt上で以下の操作をします。
(base) C:\Users\ユーザー名>
(base) C:\Users\ユーザー名>cd Desktop\python
(base) C:\Users\ユーザー名\Desktop\python>python ascii_tk.py
すると以下のような画面が出てきました。
入力欄に文字列を入れます。
「変換」ボタンを押します。
無事に「SATOLOG」の7文字がそれぞれASCIIコードに変換されました。入力欄の文字を書き換えて変換を再度押すと、新たにASCIIコードが表示されることも確認されました。
今後はTkinterで作ったアプリをWebページに埋め込む方法を模索したいと思います。
コメント