this program should read an input file that has the category year. Thus, if the user enters 198, the output should give all years having 198 in it, for example. 1981, 1982, ... etc .. But the output also picks up 199
Sierra Leone WB_LI 0 Africa 1992
Sierra Leone WB_LI 0 Africa 1993
Sierra Leone WB_LI 0 Africa 1994
Sierra Leone WB_LI 0 Africa 1995
Sierra Leone WB_LI 0 Africa 1996
Sierra Leone WB_LI 0 Africa 1997
Each line of the file contains the following fields, where there is one space between the fields: Country (50 characters) Income level (6 characters) Vaccinated percentage (3 characters) Region (25 characters) Year (4 characters). So, in total, I have 92 characters, and I look at each of the 88 characters in the wards and compare them with the characters in the year to find the desired year. I think I probably have some error in my logic, and this also treats 199 as an instance. I should not use a list or tuple. Just a file.
Here is what I did with my code:
def main():
while True:
try:
input_file=open('measles.txt','r')
break
except IOError:
print("Error opening file:",input_file)
break
f2=input("What is the name of the output file? ")
while True:
try:
output_file=open(f2,'w')
break
except IOError:
print("Error opening file:",output_file)
break
year=str(input('Input year: '))
line=input_file.readline().strip()
while line!="":
for line in input_file:
if year==line[88:92]:
output_file.write(line)
elif year==line[88:91]:
output_file.write(line)
elif year==line[88:90]:
output_file.write(line)
elif year==line[88:89]:
output_file.write(line)
elif year.lower()=="all" or year=="''" or year=='""':
print(line)
line=input_file.readline().strip()
input_file.close()
output_file.close()
main()
Can someone take a look at my code and point out the problem? Thanks Here are a few lines of the file I'm dealing with.
Afghanistan WB_LI 11 Eastern Mediterranean 1980
Afghanistan WB_LI 0 Eastern Mediterranean 1981
Afghanistan WB_LI 8 Eastern Mediterranean 1982
Afghanistan WB_LI 9 Eastern Mediterranean 1983
Afghanistan WB_LI 14 Eastern Mediterranean 1984
Afghanistan WB_LI 14 Eastern Mediterranean 1985
Afghanistan WB_LI 14 Eastern Mediterranean 1986
Afghanistan WB_LI 31 Eastern Mediterranean 1987
Afghanistan WB_LI 34 Eastern Mediterranean 1988
Afghanistan WB_LI 22 Eastern Mediterranean 1989
Afghanistan WB_LI 20 Eastern Mediterranean 1990
Afghanistan WB_LI 19 Eastern Mediterranean 1991
Afghanistan WB_LI 22 Eastern Mediterranean 1992
Afghanistan WB_LI 25 Eastern Mediterranean 1993
Afghanistan WB_LI 40 Eastern Mediterranean 1994
Afghanistan WB_LI 41 Eastern Mediterranean 1995
Afghanistan WB_LI 42 Eastern Mediterranean 1996
Afghanistan WB_LI 38 Eastern Mediterranean 1997
Afghanistan WB_LI 31 Eastern Mediterranean 1998
Afghanistan WB_LI 31 Eastern Mediterranean 1999
Afghanistan WB_LI 27 Eastern Mediterranean 2000
Afghanistan WB_LI 37 Eastern Mediterranean 2001
Afghanistan WB_LI 35 Eastern Mediterranean 2002
Afghanistan WB_LI 39 Eastern Mediterranean 2003
Afghanistan WB_LI 48 Eastern Mediterranean 2004
Afghanistan WB_LI 50 Eastern Mediterranean 2005
Afghanistan WB_LI 53 Eastern Mediterranean 2006
Afghanistan WB_LI 55 Eastern Mediterranean 2007
Afghanistan WB_LI 59 Eastern Mediterranean 2008
Afghanistan WB_LI 60 Eastern Mediterranean 2009
Afghanistan WB_LI 62 Eastern Mediterranean 2010
Afghanistan WB_LI 65 Eastern Mediterranean 2011
Afghanistan WB_LI 68 Eastern Mediterranean 2012
Albania WB_LMI 90 Europe 1980
Albania WB_LMI 90 Europe 1981
Albania WB_LMI 93 Europe 1982
Albania WB_LMI 96 Europe 1983
Albania WB_LMI 96 Europe 1984
Albania WB_LMI 96 Europe 1985
Albania WB_LMI 96 Europe 1986
Albania WB_LMI 96 Europe 1987
Albania WB_LMI 96 Europe 1988
Albania WB_LMI 96 Europe 1989
Albania WB_LMI 88 Europe 1990
Albania WB_LMI 80 Europe 1991
Albania WB_LMI 87 Europe 1992
Albania WB_LMI 76 Europe 1993
Albania WB_LMI 90 Europe 1994
Albania WB_LMI 91 Europe 1995
Albania WB_LMI 92 Europe 1996
Albania WB_LMI 95 Europe 1997
Albania WB_LMI 89 Europe 1998
Albania WB_LMI 85 Europe 1999
Albania WB_LMI 95 Europe 2000
Albania WB_LMI 95 Europe 2001
Albania WB_LMI 96 Europe 2002
Albania WB_LMI 93 Europe 2003
user3260982
source
share