У меня есть строка ("1x5y"), из которой я хочу извлечь числа, но я хочу извлечь эти числа на основе буквы.Из моей строки я хочу получить x = 1 и y = 5.
Кроме того, x или y могут присутствовать или не присутствовать в строке, но по крайней мере один из них будет присутствовать (и только один раз)., не более одного раза).
Мне удалось сделать это с помощью регулярных выражений и нескольких «если», но мне было интересно, есть ли более элегантное решение.
Спасибо
РЕДАКТИРОВАТЬ: вот что у меня есть
delta = "2y"
if ("x" in delta) and ("y" in delta):
x = re.findall('\d+',str(re.findall('\d+x',delta)))
y = re.findall('\d+',str(re.findall('\d+y',delta)))
elif ("x" in delta) and ("y" not in delta):
x = re.findall('\d+',str(re.findall('\d+x',delta)))
elif ("x" not in delta) and ("y" in delta):
y = re.findall('\d+',str(re.findall('\d+y',delta)))
else:
x = y = 0