我收到一个文本文件,其中包含许多行,如下所示......许多随机信息
Spiaks Restaurant | 42.74 | -73.70 | 2 Archibald St + Watervliet,NY 12189 | http://www.yelp.com/biz/spiaks-restaurant-watervliet|Italian|4|5|4|3|3|4|4
例如,Spiaks Restaurant位于0位,42.74位于位置1,-73.70位于位置2 ....意大利位于位置5 ... 4 | 5 | 4 | 3 | 3 | 4 | 4是另一个列表...所以基本上是列表中的列表,数字4将位于位置6,5位于位置7 ..等等
我必须询问用户,用户应回复:
What type of restaurant would you like => Italian
What is the minimum rating => 3.6
结果应为:
Name: Spiaks Restaurant; Rating 3.86
Name: Lo Portos; Rating 4.00
Name: Verdiles Restaurant; Rating 4.00
Found 3 restaurants.
这是我的代码:
rest_type = raw_input("What type of restaurant would you like => ")
min_rate = float(raw_input("What is the minimum rating => "))
def parse_line(text_file):
count = 0.0
a_strip = text_file.strip('\n')
b_split = a_strip.split('|')
for i in range(6, len(b_split)):
b_split[i] = int(b_split[i]) # Takes the current indices in the list and converts it to integers
count += b_split[i] # Add up all of the integers values to get the total ratings
avg_rate = count/len(b_split[6:len(b_split)]) # Takes the total ratings & divides it by the length
#The above basically calculates the average of the numbers like 4|5|4|3|3|4|4
if (rest_type == b_split[5] and avg_rate >= min_rate):
print b_split[0], avg_rate
结果的问题是......我得到了:
None
我知道这是一个非常非常长的问题,但如果有人能给我一些见解,我会很感激!
答案 0 :(得分:0)
您是否尝试打印出汇总的所有信息?
找出错误发生的位置,无论是在您尝试解析特定餐馆时,还是直接解析任何内容并最终得到一个空白列表。