【发布时间】:2019-12-04 06:56:46
【问题描述】:
我是 python 新手。这就是我卡住的地方。我需要将 CSV 导入 python 并创建一个搜索引擎,我需要通过输入信息准确定位小包或大包的数据。我正在尝试放置状态信息。如果我想输入诸如 2015 年之类的年份,它如何消除不在 2015 年调查部分中的状态?例如,我把 2015 年放在状态框中,它不会出现 2016 年调查的任何状态。最后,这个搜索引擎如何给用户通过消息窗口搜索到的小包大包的准确数据呢? 我非常感谢您的帮助。 Here is the csv file link,
import tkinter
import tkinter.ttk
import tkinter.messagebox
import csv
#Create the GUI
root = tkinter.Tk()
root.title("Avocado Search Engine")
root.configure( bg = "khaki1")
def show():
"""Shows the data in cvs file"""
global state_box
global year_box
with open("avocado.csv") as csv_file:
csv_reader = csv.reader(csv_file, delimiter=',')
for row in csv_file:
if state_box.get() == "Albany" and size_box.get() == "Small bag":
print(row[8])
#State label
state_label= tkinter.Label(root, text = "Choose the state")
state_label.grid(row = 0, column = 0)
state_label.configure( bg = "khaki1")
#State box
state_box = tkinter.ttk.Combobox(root, values = ["Albany","Atlanta","Boise"], state = "readonly")
state_box.grid(row = 0, column = 1)
state_box.current(0)
#Size label
size_label= tkinter.Label(root, text = "Choose the bag size")
size_label.grid(row = 0, column = 2)
size_label.configure( bg = "khaki1")
#Size box
size_box = tkinter.ttk.Combobox(root, values = ["Small bag","Large bag"], state = "readonly")
size_box.grid(row = 0, column = 3)
size_box.current(0)
#Show box
show_button = tkinter.Button(root, text = " Search", command = show)
show_button.configure( bg = "spring green")
show_button.grid(row = 0, column = 4)
#Quit
quit_button = tkinter.Button(root, text = " Quit", command = root.destroy)
quit_button.configure( bg = "red2")
quit_button.grid(row = 1, column = 4)
root.mainloop()
【问题讨论】:
-
我建议使用 pandas 来处理 csv。
标签: python python-3.x csv search tkinter