【发布时间】:2016-02-05 17:00:38
【问题描述】:
我必须从文本文件中取出数字,将它们放入一个列表中,然后向用户询问一个数字并告诉他们它是否在列表中。
这就是我所拥有的:
#read numbers to list
infile = open('charge_accounts.txt','r')
lines = infile.read().strip()
list1 = [lines]
infile.close()
#ask user for #
inp = str(input('Enter an account number: '))
#determine if input is in list
#display invalid/valid
if inp in list1:
print('valid number')
else:
while inp not in list1:
print('invalid entry')
inp = input('try another number: ')
if inp in list1:
print('valid number')
break
问题是它认为所有输入都是无效的。我想我要么搞砸了将文件转换为列表,要么搞砸了 while 循环,但我不知道要修复什么。
【问题讨论】:
-
您没有包含数字的列表。你有一个只有一个元素的列表,一个包含文件中所有文本的字符串。数字是如何存储在文件中的?每行一个数字?
-
是的,每个数字都在一行上。如何将每个数字放在单独的字符串中?
标签: list file validation python-3.x input