读取特定的CSV行并在输出框中显示

时间:2016-02-14 23:37:58

标签: csv python-3.x tkinter opencsv

我没有遵循任何具体的代码,只是朝着正确的方向前进。因为我是这个csv的新手并且有点卡住了。

我有一个csv文件,其中包含一个“订单号”列,部件描述,数量,图纸:

1)我打算做的是将订单号输入文本框。

2)在csv文件中搜索该数字并显示整行,但我希望每个字段位于不同的输出框,数量框,描述框等。但此刻我很高兴有整个行打印到一个盒子里,这样我就可以把事情搞定了。

目前我的程序已加载csv ok并正确打印整个csv文件到文本框,这只是下一步。

我是否需要读取订单号并将其保存为变量,然后以某种方式在csv代码中使用该变量?

注意:这是用tkinter制作的。

def DoASearch():
        try:
            print(int(sonumber.get()))
        except ValueError:
            messagebox.showwarning("Fail !!", "Please enter a valid Shop Order number.")

        sonumber2=sonumber

        with open("lesspreadsheettest.csv") as csvfile:
            reader = csv.DictReader(csvfile)
            for row in reader:
                sonumber2=(row['Shop Order'])
                if sonumber2 == number:
                    print(row['Shop Order'], row['Part Number'], row['Description'])

1 个答案:

答案 0 :(得分:1)

所以你只想读出csv,如:

import csv

var number = 100

with open('names.csv') as csvfile:
    reader = csv.DictReader(csvfile)
    for row in reader:
        var x = row['order']
        if x == number:
            print("We have a Match")

您需要将输入的数字设为var number