为Python类项目制作邮政编码搜索程序

为Python类项目制作邮政编码搜索程序,python,arrays,csv,Python,Arrays,Csv,我一直在为一个类编写python程序,该类接受一个文件Zipcodes.txt,并将其读入数组。它这样做是为了用户可以输入他们的zipcode并获得它所属的城市和州 Zipcodes.txt文件如果格式如下,则为CSV设置: 90401,SANTA MONICA,CA <br> 90023,LOS ANGELES,CA<br> 结果应该是这样的: Enter a zip code to find (Press Enter key alone to stop): 9040

我一直在为一个类编写python程序,该类接受一个文件Zipcodes.txt,并将其读入数组。它这样做是为了用户可以输入他们的zipcode并获得它所属的城市和州

Zipcodes.txt文件如果格式如下,则为CSV设置:

90401,SANTA MONICA,CA <br>
90023,LOS ANGELES,CA<br>
结果应该是这样的:

Enter a zip code to find (Press Enter key alone to stop): 90401
The city is SANTA MONICA and the state is CA.
我在这门课上才上了8个星期,对编程来说我是一个完全的新手,但到目前为止,我已经能够理解摆在我面前的一切。
我在这台机器上旋转轮子。

没有测试和错误处理:

import csv
zip_info_dct = {}
with open('zipcodes.txt"', 'rb') as csvfile:
     spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|')
     for row in spamreader:
       zip_code = row[0]
       city = row[1]
       state = row[2]
       zip_info_dct [zip_code] = (city, state)
zip_query = input("Enter a zip code to find (Press Enter key alone to stop): ")
if zip_query in zip_info_dct : 
    info = zip_info_dct [zip_query]
    print "The city is %s and the state is %s" % (info [0], info [1])
读取文本文件的pythonic方法是:

f = open('zipcodes.txt', 'rt')
for line in f :
    print line
f.close ()

请参见

文本中的CA后面是否有一个\n字符?我看不到问题。缩进不正确,您能整理一下以便我们可以看到一个可运行的程序吗?欢迎使用StackOverflow。请阅读并遵循帮助文档中的发布指南。适用于这里。在您发布MCVE代码并准确描述问题之前,我们无法有效地帮助您。显示您拥有的输出和获得的输出。将问题简化为代码中失败的部分。在出现问题点之前,尽可能将程序的操作替换为直接赋值。注意
readFile
有一个while循环来进行处理吗?如果您在readfile中执行此工作,则不应在main中再次调用这些函数。你有几个功能的原因吗?我将在一段代码中实现整个过程。
f = open('zipcodes.txt', 'rt')
for line in f :
    print line
f.close ()