我正在尝试创建一个函数,它从两个点找到一条线的斜率和y int,并将其返回到一个列表。
def find(p1, p2):
但是,当只有两个输入参数时,我无法找到用户如何在p1
的坐标中输入为(2,10)和p2
(4,16)?
答案 0 :(得分:2)
在Python 3中,input()
返回一个字符串,因此您可以要求用户输入某种格式的数字,然后将其解析为两个坐标的元组:
p = input('Enter a point as #,#: ')
p = tuple(int(x) for x in p.split(','))
print('p =',p)
结果:
Enter a point as #,#: 10,12
p = (10, 12)
您可以使用以下内容拆分两个组件进行计算:
x,y = p
或者只需使用p[0]
和p[1]
来访问第一个和第二个坐标。
将所有这些结合在一起:
def get_point():
p = input('Enter a point as #,#: ')
p = tuple(int(x) for x in p.split(','))
return p
def find(p1,p2):
x1,y1 = p1
x2,y2 = p2
# do calculation
# return result
p1 = get_point()
p2 = get_point()
result = find(p1,p2)