在文件中指定要打印的行

时间:2014-02-25 01:30:20

标签: python-3.x

所以在我打开文件之后,下面的代码假设读取这些行,并且只打印包含我输入的年份和我输入的收入代码的行,但是对于收入我必须输入数字1 -4表示单词文件中的一行,如何编写它以使数字识别单词

input_year = input("Enter a year:")
print()

print("Choose one of the following:")
print("1 for low income.")
print("2 for lower middle income.")
print("3 for upper middle income.")
print("4 for high income.")
print()     

income_code_input = input("Enter income level:")


for line in input_file:
   line = line.strip()
   country = line[0:50]
   income = line[51:56]
   vaccination = line[59:60]
   region = line[62:83]
   year = line[-4:]

   if year.startswith(input_year) and income.startswith(income_code_input):
      print(line.rstrip())

1 个答案:

答案 0 :(得分:0)

未指定数据格式,因此我只能猜测收入字段的起源。这是我的猜测:

code = {'1':'low ', '2':'lower', '3':'upper', '4':'high'}
if year.startswith(input_year) and income.startswith(code[income_code_input]):
    print(line.rstrip())

以上使用字典code将用户输入的数字转换为收入字段开头的字符串。注意  input返回一个字符串,以便code字典中的键都是字符串,例如'1',而不是数字,例如1。另请注意,我们需要区分“低”和“低”。因此,我在code[1]的值“低”后保留了一个尾随空格。