Python|将位置坐标转换为元组
有时,在处理位置时,我们需要大量具有纬度和经度形式的位置点的数据。这些可以是字符串的形式,我们希望获得相同的元组版本。让我们讨论可以执行此任务的某些方式。
方法#1:
使用 tuple() + float() + split() + map()上述函数的组合可用于执行此任务。在此,我们首先将坐标的两部分拆分为一个列表,使用 float() 和 map() 对它们中的每一个应用浮点函数,最后使用 tuple() 将其转换为元组。
Python3
# Python3 code to demonstrate working of
# Convert location coordinates to tuple
# Using tuple() + float() + split() + map()
# Initializing string
test_str = "44.6463, -49.583"
# printing original string
print("The original string is : " + str(test_str))
# Convert location coordinates to tuple
# Using tuple() + float() + split() + map()
res = tuple(map(float, test_str.split(', ')))
# printing result
print("The coordinates after conversion to tuple are : " + str(res))
Python3
# Python3 code to demonstrate working of
# Convert location coordinates to tuple
# Using eval()
# Initializing string
test_str = "44.6463, -49.583"
# printing original string
print("The original string is : " + str(test_str))
# Convert location coordinates to tuple
# Using eval()
res = eval(test_str)
# printing result
print("The coordinates after conversion to tuple are : " + str(res))
输出 :
The original string is : 44.6463, -49.583
The coordinates after conversion to tuple are : (44.6463, -49.583)
方法#2:
使用 eval()这是执行此特定任务的单行且推荐的方法。在此,eval() 在内部检测字符串并转换为作为元组元素分隔的浮点数。
Python3
# Python3 code to demonstrate working of
# Convert location coordinates to tuple
# Using eval()
# Initializing string
test_str = "44.6463, -49.583"
# printing original string
print("The original string is : " + str(test_str))
# Convert location coordinates to tuple
# Using eval()
res = eval(test_str)
# printing result
print("The coordinates after conversion to tuple are : " + str(res))
输出 :
The original string is : 44.6463, -49.583
The coordinates after conversion to tuple are : (44.6463, -49.583)