def filter_by_population(min_pop): town_data = load_town_data() with open('sbb.csv', 'r') as stops, open('filtered.csv', 'w') as filtered: filtered.write("Name,Latitude,Longitude\n") for line in stops: values = line.split(';') # Semikolon! name = values[0] try: lat = float(values[1]) lng = float(values[2]) if name in town_data: if town_data[name]['population'] >= min_pop: name = '"' + name + '"' # Namen in "" einpacken filtered.write(name + "," + str(lat) + "," + str(lng) + '\n') except ValueError: pass filter_by_population(10000)