Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 12, 2015 16:48:05

Niko_Cry
Зарегистрирован: 2015-12-12
Сообщения: 5
Репутация: +  0  -
Профиль   Адрес электронной почты  

Нужна помощь

Дана последовательность , содержащая от 2 до 20 слов , в каждом из которых от 2 до 10 латинских букв. между соседними словами не менее одного пробела , за последним словом точка.Вывести на экран все лова , отличные от последнего слова , предварительно расположив слова текста в алф порядке. По индексах нельзя
Была такая идея.

x=str(input("Введите слова через пробел и в конце *.*"))
        while x.endswith(".")==False or x.count(" ")<1 or x.count(" ")>19:
            print("Error")
            x=str(input("Введите слова через пробел и в конце *.*"))
        word1=(x.split(' ', 1))
        x=list(x.split(' '))
        for item in x:
            if word1!=item:
                print(item)
Не работает( Помогите пожалуйста

Отредактировано Niko_Cry (Дек. 13, 2015 14:10:33)

Офлайн

#2 Дек. 12, 2015 18:35:16

shaptmos
Зарегистрирован: 2015-12-12
Сообщения: 27
Репутация: +  4  -
Профиль   Отправить e-mail  

Нужна помощь

Что конкретно то не работает?
Я бы начал с того, что все строки, кроме первой сместил на 8 пробелов влево.

Офлайн

#3 Дек. 12, 2015 19:02:07

Niko_Cry
Зарегистрирован: 2015-12-12
Сообщения: 5
Репутация: +  0  -
Профиль   Адрес электронной почты  

Нужна помощь

shaptmos
Что конкретно то не работает?Я бы начал с того, что все строки, кроме первой сместил на 8 пробелов влево.
Должны выводиться слова , которые отличные от первого слова. А оно просто выводит все слова в столбик

Офлайн

#4 Дек. 12, 2015 19:30:23

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Нужна помощь

>>> a = "xxx aaa bbb   ccc dddddddddddddd aaa."
>>> b = re.findall("[A-Za-z]{2,10}",a)
>>> if len(b)>20:
            ????
>>> sorted([i for i in b if i!=b[-1]])
['bbb', 'ccc', 'ddddddddd', 'ddd', 'xxx']
Спецификация задачи недостаточно четкая.



Отредактировано doza_and (Дек. 12, 2015 19:33:19)

Офлайн

#5 Дек. 13, 2015 00:25:32

Niko_Cry
Зарегистрирован: 2015-12-12
Сообщения: 5
Репутация: +  0  -
Профиль   Адрес электронной почты  

Нужна помощь

doza_and
Вот зама задача. По сказали что по индексам обращаться и работать нельзя

Отредактировано Niko_Cry (Дек. 13, 2015 14:10:23)

Офлайн

#6 Дек. 13, 2015 06:24:56

shaptmos
Зарегистрирован: 2015-12-12
Сообщения: 27
Репутация: +  4  -
Профиль   Отправить e-mail  

Нужна помощь

еще и без индексов, во валят то, во валят(с)


x=str(input("Введите слова через пробел и в конце *.*"))
x = x.replace('.',' ')   
x = x.rstrip()           
x = x.split(' ')         
x.reverse()
y = word1, *items = x
z =[]
for item in items:
    if item != word1:
        z.append(item)
z.sort()
print(*z)

как то так тогда

Отредактировано shaptmos (Дек. 13, 2015 06:28:21)

Офлайн

#7 Дек. 13, 2015 09:51:09

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Нужна помощь

Niko_Cry
По сказали что по индексам обращаться и работать нельзя
В условии задачи этого нет.



Офлайн

#8 Дек. 13, 2015 10:39:37

Niko_Cry
Зарегистрирован: 2015-12-12
Сообщения: 5
Репутация: +  0  -
Профиль   Адрес электронной почты  

Нужна помощь

doza_and
Лекции мы не проходили вообще по строкам. Сказали чтобы сами освоили и сделали без индексов)

Офлайн

#9 Дек. 13, 2015 12:02:44

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Нужна помощь

Niko_Cry
и сделали без индексов)
Передайте преподу что это маразм. Если не секрет вы откуда? Какое образовательное учереждение?
последний элемент можно так взять без индекса
>>> a=[1,2,3]
>>> v=a.pop()
>>> v
3
Я вам дал несколько продвинутое решение со строками. Чтобы оно работало не забудьте сделать.
import re
Поскольку вы сами должны со строками разобраться, то будем считать что вы разобрались и с регулярными выражениями, это тоже обработка строк.



Офлайн

#10 Дек. 13, 2015 14:09:40

Niko_Cry
Зарегистрирован: 2015-12-12
Сообщения: 5
Репутация: +  0  -
Профиль   Адрес электронной почты  

Нужна помощь

doza_and
Передайте преподу что это маразм. Если не секрет вы откуда? Какое образовательное учереждение?
последний элемент можно так взять без индекса
Зайдите пожалуйста к себе на почту) Я вам написал)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version