我有一个这样的字符串:
(63, 166) - (576, 366)
我需要提取值,以便我有:
x1 = 63
y1 = 166
x2 = 576
y2 = 366
我可以轻松地使用split()
函数并将结果保存在临时数组中,然后进一步拆分它们等等,但这很难看,我想知道是否有一个光滑的方式做到了吗?我正在使用python。
答案 0 :(得分:2)
如果您可以保证没有负数,那么:
from ast import literal_eval
s = '(63, 166) - (576, 366)'
(x1, y1), (x2, y2) = literal_eval(s.replace('-', ','))
否则,您可以拆分-
并执行类似的操作,例如:
(x1, y1), (x2, y2) = map(literal_eval, s.split(' - '))