Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 10, 2015 22:07:56

Burdeen
Зарегистрирован: 2015-10-10
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь с кодом задачи

Программа работает, если я введу 1 имя, но перестает работать при вводе 2 и более имен. Как я понял он читает все имена которые я ввел как одну переменную, как мне это исправить? Спасибо.


def main():
# Начало БК main()
names=[]
n=int(input("Сколько имён? "))
print("Введите ", n, " имён")
# Начало БК for

for i in range (0,n):
m=input()
names.append(m)
print ("Первоначальный список имён: ", names)
p=input ("Введите имя для поиска: ")
# Окончание БК for
# Начало БК if

if p in names:
print ("Имя ", p, " найдено в списке на месте ", names.index(p)+1)
# Начало БК else

else:
print ("Имя ", p, " не найдено в списке ")
q=input ("Введите имя для актуализации/изменения: ")
if q in names:
loc=names.index(q)
r=input("Введите новое имя: ")
names[loc]=r
print ("Имя ", q, " заменено в списке на ", r)
else:
print ("Имя ", q, " не найдено в списке ")
names.sort()
print ("Отсортированные имена: ", names)
# Окончание БК if
# Окончание БК else
# Окончание БК main()
main()

Отредактировано Burdeen (Окт. 10, 2015 22:13:45)

Прикреплённый файлы:
attachment probl5_5.py (1,8 KБ)

Офлайн

#2 Окт. 10, 2015 22:54:55

Stright
От: Кострома
Зарегистрирован: 2015-01-20
Сообщения: 139
Репутация: +  16  -
Профиль   Отправить e-mail  

Помощь с кодом задачи

Надо вынести присваивание значения переменной p и печать первоначального списка имен из цикла for, потому что в вашем случае присваивание выполняется на каждой итерации

Отредактировано Stright (Окт. 10, 2015 22:57:20)

Офлайн

#3 Окт. 10, 2015 23:43:49

Burdeen
Зарегистрирован: 2015-10-10
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь с кодом задачи

Stright
Надо вынести присваивание значения переменной p и печать первоначального списка имен из цикла for, потому что в вашем случае присваивание выполняется на каждой итерации
А по-русски?) Я все таки начинающий) И если можно скриношотом, что нужно для исправления, ибо я вынес, а получилась какая то чепурда(

Отредактировано Burdeen (Окт. 10, 2015 23:46:12)

Офлайн

#4 Окт. 11, 2015 00:07:16

Stright
От: Кострома
Зарегистрирован: 2015-01-20
Сообщения: 139
Репутация: +  16  -
Профиль   Отправить e-mail  

Помощь с кодом задачи

def main():
    # Начало БК main()
    names = []
    n = int(input("Сколько имён? "))
    print("Введите ", n, " имён")
    # Начало БК for
    
    for i in range (0,n):
        m = input()
        names.append(m)
    print("Первоначальный список имён: ", names)
    p = input("Введите имя для поиска: ")

Отредактировано Stright (Окт. 11, 2015 00:10:02)

Офлайн

#5 Окт. 11, 2015 00:44:34

Burdeen
Зарегистрирован: 2015-10-10
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь с кодом задачи

Stright
О боже, я 5 часов смотрел на правильно выполненную работу о_о
Спасибо огромное)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version