Форум сайта python.su
вышло из рук интузиаста, который ща работает в MS походу один%))
Офлайн
Питон имхо, может быть только один - от Гвидо Ван Россама!
Офлайн
Здравствуйте,я очень извиняюсь, мог бы кто нить мне еще подкинуть задач (либо сайтов c оными) по Python?
Офлайн
Офлайн
на сайте http://www.pythonchallenge.com застрял уже на 3 задании :(
плзз,если у кого есть время обьясните в чем моя ошибка.
задание:
имется текст с кучей просто букв внутри,надо найти lowercase (1 штуку) окруженную с обоих сторон 3 uppercase
что может быть проще вроде
>>> all=open('C:\Documents and Settings\Elmir\My Documents\New.txt')
>>> text=all.read()
>>> S=
>>> for char in text:
… S.append(char)
>>> index1=S
>>> index2=S
>>> index3=S
>>> index4=S
>>> index5=S
>>> index6=S
далее по тупому создаю цикл
for char in S:
… if ((char.islower()) and (index1.isupper()) and (index2.isupper()) and (index3.isupper()) and (index4.isupper()) and (index5.isupper()) and (index6.isupper())):
… print char
и ничего не выдается :(
Офлайн
Юзай регулярные выражения. Что-нибудь типа такого: '{3}(){3}'
Офлайн
спасибо, но просто интересно где я ошибся…
меня чаще всего именно такие вещи в тупик ставят-вроде бы все правильно ( по моему мнению разумеется),а не работает ни черта :(
Офлайн
В чем ошибка? :) Я лично даже не пойму что ты пытаешся сделать.
>>> index1=S
>>> index2=S
>>> index3=S
>>> index4=S
>>> index5=S
>>> index6=S
Чо ты хочешь добиться этими строками? len(char) всегда равоно 1!!! Твоя идея вкорне не верна.
Офлайн
len(char) всегда равоно 1!!почему..у меня же список…я наверное чегото не понимаю :(
Офлайн
char - это переменная которая меняется в цикле и всегда содержит только 1 символ. Я. как понял. ты хотел получить длину строки. для этого надо было сделать так: 'len или len(text)'. Но даже это не будет работать.
Ты фиксируешь символы кот будешь проверять, соответственно это первые три и последние три. Но строка может быть такой: ‘23123132sdaAAAaAAA23fs’. И соответственно совпадений ты не получишь. Тебе не надо так же загонять строку в массив - это лишняя работа. Если использовать такое лобовое решение то надо просто пройти в цикле по строке, проверяя имеют-ли 3 символа слева и 3 справа верхний регистр.
Офлайн