在文本文件中搜索单词

时间:2018-11-08 20:36:48

标签: python-3.x

我有一个包含员工记录的文件,我想搜索EMP_NO,并使用输入的EMP_NO返回用户的记录。我尝试从我购买的python书中获取示例,并根据需要进行更改,但是当我输入EMP_NO时,它会直接转到我的“如果找不到”语句,并说该语句不存在。

data = open('Records.txt', 'r')
found = False
search = input("Enter the UserID of the record you want to find: ")
user_id = data.readline()

while user_id != '':
    user_id = user_id.rstrip('\n')

    if search == user_id:
        print('User_ID', user_id)
        print()
        found = True
    user_id = data.readline()

if not found:
    print("The UserID entered does not exist.")

记录文件中记录之一的示例:

#EMP_NO, EMP_NAME, AGE, POSITION, SALARY, YRS_EMP   
001, Peter Smyth, 26, Developer, 29000, 4
002, Samuel Jones, 23, Developer, 24000, 1
003, Laura Stewart, 41, DevOps, 42000, 15

1 个答案:

答案 0 :(得分:0)

使用简单的open读取文件:

data = open('myfile.csv').read().splitlines()

然后您可以使用列表理解:

EMP_NO = '001'
record = [l for l in data if l.split(',')[0] == EMP_NO][0]