Q&A テンプレート script編

先に見栄えの良いGUIで作る英単語学習アプリを上げましたが、今回はその基になるscriptによるアプリを作りました。
本来ならこちらが先なのですが、なんかの都合でこちらの方のアップが遅れました。

****************************************************************

 

英単語Q&A テンプレート ー スクリプト編

進め方はGUIとほとんど同じですが、少し簡単になります。

1.必要ライブラリー: tkinter, random
2.データ:要素は二個、区切りはtabでUTF-8txtファイルを準備
3.必要widget:label、entry、text、button
4.codeの説明:
・必要ライブラリーをimportする
・必要widgetを配置する
・全ファイルを読み込む(ファイル行数をcountとする)
・要素名のlistを作る(今回は二個)
・そのlistに全要素を格納する
・ボタン1クリックで、乱数に応じた要素1をentry1に表示する
・1秒後に単語の意味が表示される

 

# 英単語(単語数自動取得-script)ver2.1.py OK 7/3/2021
# textファイルは、JISとutf_8があるので注意
# 英単語の数量を自動でcountする
 
import random
from time import sleep
 
def read_words():
    
    with open("英単語試験100_uft8.txt", "r", encoding="utf_8") as file: 
        lines = file.readlines()
        
    """ こちらでもOK
    file = open("英単語試験100_uft8.txt", "r", encoding="utf_8") 
    lines = file.readlines()
    file.close()
    """
 
    e_words = []
    j_words = []
 
    line_count = 0
 
    for line in lines:
        
        line = line.rstrip("\n")
        name = line.rsplit(" ") 
        
        if len(name) == 2:
            e_words.append(name[0])
            j_words.append(name[1])
            line_count +=1
    return line_count,[e_words, j_words]
 
def show_data(count, num, e_words, j_words):    
    e_word = e_words[num]
    print(e_word, end=' : ') # 段落せず
    j_word = j_words[num]
    sleep(1)  # 1秒後に意味の表示をする
    print(j_word)
 
count, words = read_words()
e_words = words[0]
j_words = words[1]
 
num = random.randrange(0, count)
 
 
x = input("Enter for next word.(終了するなら exit を入力)")
while True:
    x = input()
    if x == 'exit':
        break
 
    num = random.randrange(0, count) #0~99迄の100個の乱数を発生させる
    #print(count) # 単語数自動計算
    show_data(count, num, e_words, j_words)
 
    

 

runするとscriptで次にように表示されます。 exitと入れると終わります。

>>>
Enter for next word.(終了するなら exit を入力)

malcontent eye 不満そうな目

dork いやなやつ、まぬけ

garbled 意味不明の

comity 礼譲

frisky 跳ね回る、快活な、陽気な

 

 

 

 

Python小学館
クラスへの移行練習-① ②

先人のプログラムを利用させて頂くには、やはりクラス(特に継承機能)を理解する必要が有ります。 そこで …

Python別館
Python別館 目次

Pythonで作成したアプリ関連の記事は「Python別館」に、widgetやその使用方法・それを使 …

Python小学館
csvファイルの呼び込み その二

textファイルでもcsvファイルでも読めるように、読込機能だけのcodeをアップしておきます。 # …