猿问

python中的循环列表

我是 Python 的新手,但试图调用 Google 距离矩阵 API

这就是我的数据框的样子

将数据加载到数据框中

data = pd.read_csv(input_filename, encoding ='utf8')

我只需要一些帮助来循环列表。


问题:它不断打印整个列表

#Column name in your input data

start_latitude_name = "Start Latitude"

start_longitude_name = "Start Longitude"


end_latitude_name = "End Latitude"

end_longitude_name = "End Longitude"


start_latitude_names = data[start_latitude_name].tolist()

end_latitude_names = data[end_latitude_name].tolist()


start_longitude_names = data[start_longitude_name].tolist()

end_longitude_names = data[end_longitude_name].tolist()



for start_latitude_name in start_latitude_names: 

    origins = start_latitude_name, start_longitude_name

    destinations = end_latitude_name, end_longitude_name

    mode = "walking"


    # Set up your distance matrix url

    distancematrix_url = "*Omitted unnecessary parts*origins={0}&destinations={1}&mode={2}&language=en-EN&key={3}".format(origins, destinations, mode, API_KEY)


    print(distancematrix_url)

电流输出(来自每个回路)

# Omitted unnecessary info

origins=40.7614645,123.0,-73.9825913,456.0&destinations=40.65815,789.0,-73.98283,0.0

预期输出(来自每个循环)

origins=40.7614645,-73.9825913&destinations=40.65815,-73.98283

我确定我没有正确循环它,但是我已经在几个帖子中尝试了答案,但它对我不起作用。我愿意接受更好的循环数据替代方案。随时纠正我。


一只甜甜圈
浏览 214回答 2
2回答

长风秋雁

如果我理解正确,您可以矢量化此操作并使用坐标的字符串表示形式:import pandas as pd# Make pandas print entire strings without truncating thempd.set_option("display.max_colwidth", -1)# Create dummy-df from your exampledf = pd.DataFrame({"start_latitude": [40.76, 123.00], "start_longitude": [-73.98, 456.00], "end_latitude": [40.65, 789.00], "end_longitude": [-73.98, 0.00]})print df# Set globalsmode = "walking"API_KEY = "my_key"# Create the url strings for each rowdf["distance_matrix_url"] = "origins=" + df["start_latitude"].map(str) + "," + df["start_longitude"].map(str) + "&destinations=" + df["end_latitude"].map(str) + "," + df["end_longitude"].map(str) + "&mode=" + mode + "&languge=en-EN&key=" + API_KEY# Print resultsprint df输出:   end_latitude  end_longitude  start_latitude  start_longitude                                                                   distance_matrix_url0  40.65        -73.98          40.76          -73.98            origins=40.76,-73.98&destinations=40.65,-73.98&mode=walking&languge=en-EN&key=my_key1  789.00        0.00           123.00          456.00           origins=123.0,456.0&destinations=789.0,0.0&mode=walking&languge=en-EN&key=my_key这是你要找的吗?
随时随地看视频慕课网APP

相关分类

Python
我要回答