gpt4 book ai didi

python - 我该如何解决与折线的二维坐标相关的问题

转载 作者:太空宇宙 更新时间:2023-11-03 20:22:13 27 4
gpt4 key购买 nike

我有一个折线坐标的字符串输入:

 (1,2)(2,3)(4,5)(8,9)

我有功能:-

def distance(p1,p2):

如何将值 (1,2)(2,3) 发送到 p1p2 等等并计算每个点之间的距离?

最佳答案

您收集输入(这是一个字符串):

in_coord = input('Please enter coordinates in format "x y x y": ')

然后将输入转换为集合:

in_conv = [int(i) for i in in_coord if i != ' ']
p_list = []
for e in range(0, len(in_conv), 2):
p_list.append((in_conv[e], in_conv[e+1]))

现在将它们发送到您的函数:

def distance(p1, p2):
print(f'Result of {p1} and {p2}')

for i in range(0, len(p_list), 2):
distance(p_list[i], p_list[i+1])

所以在实践中它看起来像这样:

>>> in_coord = input('Please enter coordinates in format "x y x y": ')
Please enter coordinates in format "x y x y": 1 2 2 3 4 5 8 9
>>> in_conv = [int(i) for i in in_coord if i != ' ']
>>> p_list = []
>>> for e in range(0, len(in_conv), 2):
... p_list.append((in_conv[e], in_conv[e+1]))
...
>>> def distance(p1, p2):
... print(f'Result of {p1} and {p2}')
...
>>> for i in range(0, len(p_list), 2):
... distance(p_list[i], p_list[i+1])
...
Result of (1, 2) and (2, 3)
Result of (4, 5) and (8, 9)
<小时/>

如果您想使用原始字符串,请将其替换为生成 p_list:

x = '(1,2)(2,3)(4,5)(8,9)'
p_list = []
for i in x:
try:
p_list.append(int(i))
except ValueError:
pass

关于python - 我该如何解决与折线的二维坐标相关的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58086754/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com