Python如何循环批量生成指定格式的经纬度拼接字符串
批量生成格式化坐标字符串的实现方案
核心逻辑是同步遍历客户经度、纬度两个列表,按指定格式拼接字符串即可,Python中用zip()函数配对两个列表的元素是最简洁的写法。
步骤1:定义基础数据
先把门店坐标、客户经纬度列表定义好:
# 门店经纬度 store_lng = 50 store_lat = 30 # 客户经度、纬度列表 lng_customers = [51, 52, 53, 54] lat_customers = [35, 36, 37, 38]
步骤2:循环生成目标字符串
直接遍历配对后的客户坐标,用f-string做格式化,注意输出字面量大括号需要写双层大括号转义:
point_list = [] for cust_lng, cust_lat in zip(lng_customers, lat_customers): # f-string中{{ 会输出单个{,}}会输出单个} target_str = f'your points are/{{{store_lng}}},{{{store_lat}}};{{{cust_lng}}},{{{cust_lat}}}' point_list.append(target_str)
执行后point_list里的内容和要求的输出完全匹配:
'your points are/{50},{30};{51},{35}' 'your points are/{50},{30};{52},{36}' 'your points are/{50},{30};{53},{37}' 'your points are/{50},{30};{54},{38}'
如果你习惯用索引遍历的写法,也可以用下面的实现,效果完全一致:
point_list = [] for idx in range(len(lng_customers)): cust_lng = lng_customers[idx] cust_lat = lat_customers[idx] target_str = f'your points are/{{{store_lng}}},{{{store_lat}}};{{{cust_lng}}},{{{cust_lat}}}' point_list.append(target_str)
内容的提问来源于stack exchange,提问作者alireza
相关产品推荐
相关产品推荐

