■csv(Comma Separated Values)
カンマ区切りのデータ
CSVデータの例
recipe.csv
酢鶏,鶏肉,卵,大根,,
筑前煮,人参,鶏肉,蓮根,大根,絹さや
チキンステーキ,鶏肉,大根,大葉,,
ささみソテー,鶏肉,大根,レタス,,
酢豚,豚肉,玉ねぎ,人参,筍,
ハンバーグ,豚肉,玉ねぎ,,,
鶏の唐揚げ,鶏肉,,,,
カレーライス,豚肉,人参,玉ねぎ,ジャガイモ,
Excelに適当な表を作ります。「名前をつけて保存」で「ファイルの種類」をcsvで選択してください
■読み込みの確認
import csv
RECIPEFILE = 'C:/Users/Hikyaku/Documents/prj/kotorilabo/sample/recipe.csv'
recipecsv = open(RECIPEFILE, encoding='shift-jis')
for row in csv.reader(recipecsv):
print(row)
■データを構造化する
import csv
RECIPEFILE = 'C:/Users/Hikyaku/Documents/prj/kotorilabo/sample/recipe.csv'
#食材から料理を検索する
def search_ryori(shokuzai):
ryori_list = []
for ryori in recipe:
if shokuzai in recipe[ryori]:
ryori_list.append(ryori)
return ryori_list
#csvファイルを読み込む
recipecsv = open(RECIPEFILE, encoding='shift-jis')
recipe = {} #recipe[料理名] = [食材1, 食材2, ...]
for row in csv.reader(recipecsv):
recipe[row[0]] = row[1:] #rowの先頭をキーに、1番地以降を値に設定する
#食材の検索
shokuzai = input('手持ちの食材は?')
ryori_list = search_ryori(shokuzai)
print(ryori_list)
■4択クイズプログラム
#4択クイズ
import os
import tkinter as tk
mondai = '朝来市佐嚢の出身で第百銀行の頭取を務めた人物は誰でしょう。'
sentakushi = ['北垣国道','原六郎','桜井勉','加藤弘之']
seikai = 1 #何番の選択肢が正解か
def kotaeawase():
message = ''
if kaito.get() == seikai:
message = '正解!'
else:
message = '間違い! 正解は ' + sentakushi[seikai] + ' です。'
tk.Label(text = message).pack()
root = tk.Tk()
root.geometry("400x300") #ウィンドウサイズ
tk.Label(text = mondai).pack() #問題文の表示
kaito = tk.IntVar() #何番の選択肢がチェックされているか
kaito.set(0) #初期値は0番をチェックする
for i in range(len(sentakushi)):
tk.Radiobutton(text = sentakushi[i],variable = kaito, value = i).pack(side = 'left')
tk.Button(text = "OK", command = kotaeawase).pack() #ボタンの表示
root.mainloop()
コメント
最新を表示する
NG表示方式
NGID一覧