根据用户输入搜索data.txt文件以获取信息并进行打印(Python 3.5.1)

时间:2016-05-22 10:39:40

标签: python

下面的代码读取data.txt文件并在data.txt文件中打印记录。

text_file = open("data.txt", "r")
lines = text_file.readlines()
print (lines)
print (lines)
text_file.close()


def print_all_records(records):
print("Date" + "\t\t" + "Branch" + "\t\t" + "Daily Sale" + "\t\t" + "Transactions")
for record in records:
    parts = record.split(",")
    print(parts[0] + "\t" + parts[1] + "\t" + "$" + parts[2] + "\t\t" + parts[3])

data.txt文件中的信息示例

1-2-2014,Frankton,42305.67,23
12-4-2014,Glenview,21922.22,17
10-2-2015,Glenview,63277.9,32

我如何制作它以便我可以按日期查询记录。例如,如果用户输入日期1 2 2014,它将搜索data.txt文件以查找该日期是否存在然后打印该记录的那一行。如果它没有找到任何东西,它会要求用户一次又一次地尝试,直到找到与记录匹配的日期。

1 个答案:

答案 0 :(得分:0)

我假设您使用的是Python 3。

services.TryAddSingleton<IHttpContextAccessor, HttpContextAccessor>();

如果您使用的是Python 2,请将def print_entries(date): """Prints all the entries that match with date""" with open('a.txt', 'r') as f: flag = False content = f.readlines() content = [line.strip('\n').split(',') for line in content] for row in content: if row[0] == date: flag = True print(*row, sep='\t') if not flag: print('Try again') return flag while not print_entries(input("Enter date :")): pass 替换为print(*row, sep = '\t')

运行程序 -

print('\t'.join(row))