#python #list
#python #Список
Вопрос:
Я написал следующую функцию, которая получает символ, создает из него список с заданной длиной символа и, наконец, удаляет элемент из вновь созданного списка.
def create_list_from_char(char, remove_elem):
n = int(len(remove_elem))
my_list = [char[i:i n] for i in range(0, len(char), n)]
print("Created list is: ", my_list)
print(remove_elem in my_list)
new_list = my_list.remove(remove_elem)
print("new list is: ", new_list)
return new_list
Однако, когда я пытаюсь это сделать, кажется, что он не удаляет указанный элемент из списка, и он возвращает None. Вот пример:
>>> create_list_from_char('ABCDEFGHIJKL', 'IJKL')
Created list is: ['ABCD', 'EFGH', 'IJKL']
True
new list is: None
Ответ №1:
используйте это:
def create_list_from_char(char, remove_elem):
n = int(len(remove_elem))
my_list = [char[i:i n] for i in range(0, len(char), n)]
print("Created list is: ", my_list)
print(remove_elem in my_list)
my_list.remove(remove_elem)
print("new list is: ", my_list)
return my_list
вывод:
>>> create_list_from_char('ABCDEFGHIJKL', 'IJKL')
Created list is: ['ABCD', 'EFGH', 'IJKL']
True
new list is: ['ABCD', 'EFGH']
['ABCD', 'EFGH']
Подробная информация
remove
метод удаляет выбранный элемент из исходного списка и не возвращает новый.
Ответ №2:
list.remove
это метод, который выполняет удаление на месте и не возвращает новый список