Форум сайта python.su
0
Нужно сделать цикл с n итерациями, где n это кол-во символов в строке, я сделал но может можно по красивее?
for i in range(1,len(s)+1): print i
Офлайн
173
Если не нужен индекс:
for c in s: print c
for i, c in enumerate(s): print i, c
for i, c in enumerate(s, 1): print i, c
Офлайн
0
Ещё вопрос, а как проверить что строка состоит с одних и тех же символов?
str = "aaaaaaa"
Офлайн
173
johniek_compМожно так:
Ещё вопрос, а как проверить что строка состоит из одних и тех же символов?
In [1]: s1 = 'aaaaaaaa' In [2]: s2 = 'aaaaaab' In [3]: len(set(s1)) == 1 Out[3]: True In [4]: len(set(s2)) == 1 Out[4]: False
In [5]: all(s1[0] == c for c in s1) Out[5]: True In [6]: all(s2[0] == c for c in s2) Out[6]: False
Отредактировано reclosedev (Май 31, 2012 15:06:08)
Офлайн
253
>>> a="aaaaaaaaaa" >>> import re >>> re.match(a[0]+"+$",a) <_sre.SRE_Match object at 0x01219E20> >>> re.match(b[0]+"+$",b) >>>
Отредактировано doza_and (Май 31, 2012 20:28:06)
Офлайн
-2
doza_andПитон такой питон - все логичные имена заняты, на перезапись ничто не матерится.
p.s.
постарайтесь не называть переменную str - при этом вы не сможете использовать встроенную функцию str преобразующую любой объект в строку
a="aaaaaaaaaa" a.count(a[0]) == len(a)
Офлайн
3
doza_andОтчего же, можно использовать:
постарайтесь не называть переменную str - при этом вы не сможете использовать встроенную функцию str преобразующую любой объект в строку
>>> str = 1 >>> del str >>> str(5) '5'
>>> __builtins__.str = 123 >>> str 123
Офлайн
32
asilyatorДля match “^” не нужен, он всегда с начала строки проверяет.
doza_and, ты имхо ^ забыл.
Офлайн
-2
А ну да, еще один питонокостыль, добавили лишнюю фунцию - и запоминай, какая из них что делает. В перле регекспы были поприятнее, зато в питоне есть сырые строки и re.escape.
Офлайн
857
asilyator
А ну да, еще один питонокостыль, добавили лишнюю фунцию - и запоминай, какая из них что делает.
>>> re.search(r'^....$', 'abc\ndefg\nhijk', re.M).group() 'defg' >>> re.match(r'^....$', 'abc\ndefg\nhijk', re.M).group() Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'NoneType' object has no attribute 'group' >>>
Офлайн