2013-02-07 73 views
0

尝试创建火车预订系统。 无法搜索我的csv并打印某一行。搜索csv并打印行

用户已经有ID号,并且CSV是载像

这是我到目前为止有:

+0

仅供参考,内置['csv'](http://docs.python.org/3/library/csv.html#module-csv)模块将完成大部分CSV解析您。 –

+0

''如果id在行:''会起作用,但不够精确,因为''id = 1''会匹配所有带有''1''的行。无论如何,你需要把''id''列出来,它似乎不在你的数据集中。 – sotapme

回答

2

您是匹配的对ID的整条生产线。您需要拆分第一个字段并检查:

def buySeat(): 
    id = raw_input("please enter your ID") 

for line in open("customers.csv"): 
    if line.split(',')[0] == id: 
     print line 
    else: 
     print "sorry cant find you" 
1

尝试使用内置的CSV模块。随着您的需求变化,它会让事情变得更容易。

import csv 

id = raw_input("please enter your ID") 

ID_INDEX = 0 

with open('customers.csv', 'rb') as csvfile: 
    csvReader = csv.reader(csvfile) 
    for row in csvReader: 
     # Ignore the column names on the first line. 
     if row[ID_INDEX] != 'counter': 
      if row[ID_INDEX] == id: 
       print ' '.join(row) 
      else: 
       print 'sorry cant find you'