2013-09-27 2 views
0

Я хочу, чтобы он попросил пользователя ввести свой любимый фильм и добавить его в конце списка, а затем снова отобразить список. а также следить за тем, чтобы пленка не была последней. это то, как далеко ив вставал:Добавить вход пользователя в список

films = ["Star Wars", "Lord of the Rings", "Shawshank Redemption", "God father"] 

for films in films: 
    print ("%s" % films) 

add = input("Please enter a film: ") 
films.insert(-1,add) 
print (films) 

Edit:

Когда я попробовал, что я получаю ошибку:

Traceback (most recent call last):

File "H:\Modules (Year 2)\Advanced programming\Python\Week 2 - Review and Arrays\Week 2.2 - Exercises.py", line 48, in films.append(add) AttributeError: 'str' object has no attribute 'append'

ответ

3

Используйте in, чтобы проверить, является ли элемент уже присутствует в списке или нет, а затем используйте list.append, чтобы добавить этот элемент в конец списка.

add = input("Please enter a film: ") 
if add not in films: 
    films.append(add) 

Обратите внимание, что в течение петли вы заменили films со строкой, использовать какое-то другое переменное имя:

for film in films: 
    print ("%s" % film) 
+0

я получаю сообщение об ошибке: , если добавить не в фильмах: films.append (добавить) AttributeError: «ул» объект не имеет атрибута «добавляемых» – Ross

+0

@Ross Я обновил ответ. –

+0

Спасибо, что это сработало – Ross

0

Проверьте, если он уже находится в списке с not in и использовать append добавить это до конца списка:

films = ["Star Wars", "Lord of the Rings", "Shawshank Redemption", "God father"] 

for films in films: 
    print ("%s" % films) 

add = input("Please enter a film: ") 
if add not in films: films.append(add) 
else: print("Already in list!") 
print (films) 
1

ошибка здесь:

for films in films: 
    print("%s" % films) 

Вы делаете for films in films вместо for film in films.

Кроме того, другие верны, что лучший способ записи films.insert(-1, ...) - films.append(...).

0
""" 
This is for a dictionary 
"""" 
Cities={"London":0,"Cairo":2182,"Lagos":3110,"Lima":6314} 
while True: 
    city=input("Enter a city") 
    if city in Cities: 
     print (Cities[city]) 
    else: 
     print("Not in dictionary please input the distance") 
     distance=input() 
     Cities[city]=int(distance) 
     print (Cities) 
Смежные вопросы