Используйте команды zip
и iter
вместе:
zip(*[iter(l)]*2)
, которые я нашел в документации Pipon 3 zip :
l = [1,2,3,4,5,6]
for i,j in zip(*[iter(l)]*2):
print("{}+{}={}".format(str(i),str(j),str(i+j)))
, что приводит к:
1+2=3
3+4=7
5+6=11
Попробуй так:
import re
string = "10x3"
regexp = r"(\d+)x(\d+)"
regexmatch = re.match(regexp, string)
if regexmatch is not None:
print("TRUE")
print(re.search(regexp, string).groups())
lower = regexmatch.group(1)
upper = regexmatch.group(2)
print("LOWER : " + str(lower))
print("UPPER : " + str(upper))
else:
print("FALSE")
Вы можете попробовать использовать разбиение строки на каждом x
в строке. Или используя регулярное выражение, как один из других упомянутых ответов.
expression = "12x10x20x45x50x45"
numbers = expression.split('x')
print(numbers)
Пример вывода
['12', '10', '20', '45', '50', '50']
Вы можете использовать x
в качестве разделителя для разделения строк, а затем сопоставить строки с типом int
number = "12x10"
lower, upper = list(map(int, number.split('x')))
# 12, 10
number = "3x3"
lower, upper = list(map(int, number.split('x')))
# 3, 3
Возможно, один чистый способ
t = number.split('x')
x, y = int(t[0]), int(t[2])