Спасибо Chern.
Блин, никак не могу составить блок схему, чтобы строку вида - Z5x3A2 ->>>> ZZZZZxxxAA.
breidosА что именно не получается? Давайте помогу.
Блин, никак не могу составить блок схему, чтобы строку вида - Z5x3A2 ->>>> ZZZZZxxxAA.
x="Z15x33A2"
i=0
k=''
while i<len(x):
try:
if int(x[i]):
k+=x[i]
print k
except:
print x[i]
k=''
i+=1
>>>
Z
1
15
x
3
33
A
2
>>>
while i<len(x):
try:
if int(x[i]):
breidosВы все правильно делаете. Осталось только в том месте, где у вас появилась буква проверить есть ли у вас предыдущая буква(ее нужно запомнить в переменной, а не выводить) и число. Если есть, то добавить буква*число к результату(еще одна переменная). Результат вывести после цикла.
никак не могу подсчитать число.
x="Z15x33A2"
i=0
k=''
l=''
while i<len(x):
try:
if int(x[i]):
k+=x[i]
except:
print l, k
k=''
l=x[i]
i+=1
x="Z15x33A2"
i=0
k=''
l=''
while i<=len(x):
try:
if int(x[i]):
k+=x[i]
except:
print l, k
k=''
l=x[i]
i+=1
Isemа для чего там r ?
Оба выражения можно объединить в одно:sb = ''.join(c * int(n) for c, n in re.findall( r'([^\d]+)(\d+)', sa))