#python #arrays #python-3.x #python-2.7
#python #массивы #python-3.x #python-2.7
Вопрос:
У меня есть массив, и я хочу удалить или добавить элемент, который нравится пользователю my_list.remove(input("which item do you remove")
. Как мне это сделать правильно?
Я бы ожидал, что написанный мной код удалит элемент, выбранный пользователем (если он есть в списке), из списка, как обычная команда удаления, за исключением ввода пользователем
Я упускаю что-то очевидное? Я начал python несколько дней назад, и я не очень хорош в этом. Спасибо.
Ответ №1:
Вот сценарий python (2 или 3) для достижения этой цели:
from __future__ import print_function
from builtins import input
mylist = ['apple', 'banana', 'pineapple']
mylist.pop(mylist.index(input('Which element do you want to remove from the list?')))
print(mylist)
Использование:
$python foo.py
Which element do you want to remove from the list?apple
['banana', 'pineapple']
$ python3 foo.py
Which element do you want to remove from the list?pineapple
['apple', 'banana']
Если вы попытаетесь удалить что-то, чего нет в списке, ошибка на самом деле довольно заметна:
Which element do you want to remove from the list?peach
Traceback (most recent call last):
File "foo.py", line 4, in <module>
mylist.pop(mylist.index(input('Which element do you want to remove from the list?')))
ValueError: 'peach' is not in list
Комментарии:
1. Лучше использовать
remove
, чемpop
/index
Ответ №2:
Для экземпляра у вас есть list [‘a’, ‘e’, ‘i’, ‘o’, ‘u’], и вы хотите удалить любое значение из этого списка
li = ['a', 'e', 'i', 'o', 'u']
remove_value = input("Which item do you want to remove: ")
li.remove(remove_value)
print(li)
И вывод будет:
>>> Which item do you want to remove: i # this is the value you want to remove
>>> ['a', 'e', 'o', 'u']
Для получения более подробной информации: Подробнее о списках
Ответ №3:
Я пишу простую демонстрацию python ниже. вы можете удалить или добавить элемент по своему усмотрению.
# -*- coding: UTF-8 -*-
hobbies_list = ['cooking', 'basketball', 'walking', 'reading']
def remove_hobby():
target = input("Which item do you want to remove: ").lower()
if target in hobbies_list:
hobbies_list.remove(target)
else:
print("This item {} does not exist".format(target))
def add_hobby():
target = input("Which item do you want to add: ").lower()
if target in hobbies_list:
print("This item {} does not exist".format(target))
else:
hobbies_list.append(target)
print("This item {} add success ".format(target))
if __name__ == '__main__':
print("current hobbies:{}".format(','.join(hobbies_list)))
remove_hobby()
print("current hobbies:{}".format(','.join(hobbies_list)))
add_hobby()
print("current hobbies:{}".format(','.join(hobbies_list)))