Это мой код:
big_str = "[41.386263640000003, -81.494450689999994]\t6\t2011-08-28 19:02:28\tyay. little league world series!\n[42.531041999999999, -82.90854831]\t6\t2011-08-28 19:02:29\ti'm at holiday inn express suites & hotel roseville mi (31900 little mack ave., at masonic blvd., roseville) \n[39.992309570000003, -75.131119729999995]\t6\t2011-08-28 19:02:29\t@_tweetthis what dorm r you in?\n[54.104106119999997, 28.336019929999999]\t6\t2011-08-28 19:02:29\t@andykozik круто !!!\n[25.787949600000001, -80.132949600000003]\t5\t2011-09-03 05:40:14\tpizza rustica #ftw"
# This breaks up a string of tweets into lists
def break_into_records(big_mess):
rows = big_mess.split('\n')
records = []
for row in rows:
records.append(row.split('\t'))
for i in range(len(records)):
records[i][0] = records[i][0].replace(' ','').strip('[]').split(',')
return records
# This will loop over that list, and call a draw
# every time a word pops up
# as well as give you a word count
def count_words(word, data_structure):
count = 0
for loc, id, time, message in data_structure:
if word in message:
drop_pin(loc) # we pass cords to drop pin, no work to do
count += message.count(word)
return count
def drawGpsPoint(x):
y = drop_pin(x)
return y
def drop_pin(location):
# this function needs to map the GPS cord to an x/y
# so it can draw
# but it has the GPS locs.
lat, lon = location
lat, lon = float(lat), float(lon)
x = 500 - ((lat + 180) * 500.0/360)
y = 500 - ((lon + 180) * 500.0/360)
return lat, lon
a = break_into_records(big_str)
for x in a:
drawGpsPoint(x)
print("All Tweets Loaded")
r = raw_input("Enter search word: ")
Показывает ошибку каждый раз, когда достигает значения lon в функции drop_pin (location). Нужно ли разделять переменные перед тем, как пропустить их через эту строку?