【发布时间】:2022-11-24 17:35:18
【问题描述】:
我有一个文件,其中包含大量国家、年份和预期寿命年龄的列表。我不知道如何确保只允许用户输入实际存在的年份。弄清楚这一点后,我只需要调用那些年份(具有相应的国家名称、代码和预期寿命。我该怎么做?
import pathlib
cwd = pathlib.Path(__file__).parent.resolve()
data_file = f'{cwd}/life-expectancy.csv'
with open(data_file) as f:
while True:
user_year = input('Enter the year of interest: ')
for lines in f:
cat = lines.strip().split(',')
country = cat[0]
code = cat[1]
year = cat[2]
age = cat[3]
if any( [year in user_year for year in cat[2]] ):
print(f'Your year is {user_year}. That is one of our known years.')
print(year)
print()
continue
else:
print('Please enter a valid year (1751-2019)')
print('test')
【问题讨论】:
-
几个 cmet:您在每次用户尝试时都会读取您的文件。为什么不在进入输入部分之前阅读一次?并请添加一个示例,说明用户与脚本的交互方式,例如通过显示控制台在各种情况下应该是什么样子。
-
您的文件中是否存在从 1751 年到 2019 年的所有日期?
-
“life-expectancy.csv”中的代码和年龄是多少?您能否在此列下提供示例值?
标签: python