Python удалить все none

Как удалить None из списка в Python

В Python, когда функция ничего не возвращает, она косвенным образом возвращает None . В связи с появлением и бурным развитием машинного обучения в значении None особенно важно разобраться. Исключение этих значений очень важно, например, в предварительной обработке данных.

Давайте разберемся, как удалить None из списка.

В Python для замены None используются разные методы, такие как DataFrame, fillna или Series. Ни одно ключевое слово в Python не объявляет нулевые объекты или переменные. В этом языке None относится к классу NoneType .

Мы можем присвоить значение None множеству переменных, и все они будут указывать на один и тот же объект. В отношении None интересен тот факт, что мы не можем рассматривать его как ложное значение. None – это пустая строка или ноль.

Читайте также:  Install php как установить

Рассмотрим это на примерах. Чтобы объяснить, как Python удаляет нулевые значения из списка, мы используем компилятор Spyder.

Пример 1

В нашем первом примере для удаления None из списка мы используем простой подход.

Создаем новый список и добавляем в него элементы (как None, так и не-None), а затем перебираем список.

Давайте разберем, как это работает. Чтобы запустить данный код, первое, что вам нужно сделать, это открыть IDE, в нашем случае это Spyder. Для этого в строке поиска ПК с Windows введите Spyder и нажмите «Открыть». Используйте сочетание клавиш «Ctrl + Shift + N», чтобы создать новый файл, или воспользуйтесь меню «Файл». После создания нового файла можно приступить к написанию кода для удаления None из списка.

my_list = [2, None, 3, None, None, 8, None, 9] print ("My list is : " + str(my_list)) result = [] for val in my_list: if val != None : result.append(val) print ("List after removing None values : " + str(result))

Здесь мы сначала инициализируем наш список и добавляем в него элементы. Идущая следом функция print() , выводит все элементы исходного списка.

Далее мы используем наш основной метод для удаления из списка значений None . Чтобы определить, является ли элемент None, мы используем оператор if . Если элемент нашего списка не равен None , он сохраняется в новом списке result при помощи метода append. В противном случае ничего не происходит.

В конце мы повторно используем функцию print() , которая выводит в консоль значения из нового списка.

После написания кода перейдите в меню «Файл» и сохраните получившийся код с расширением .py . В нашем случае файл называется RemoveNone.py, но вы можете выбрать любое другое имя.

Запустите код в вашей IDE. Если используете Spyder, нажмите клавишу F9.

Output: My list is : [2, None, 3, None, None, 8, None, 9] List after removing None values : [2, 3, 8, 9]

Как видите, в результате мы получили именно то, что хотели – список без элементов None .

Пример 2

Большим минусом в использовании первого метода является то, что в коде слишком много строк, а их обработка занимает лишнее время.

Поэтому во втором примере мы сделаем то же самое, но в сжатом виде. Мы найдем значения, отличные от None , и составим из них новый список.

Создайте в вашей IDE новый пустой файл или используйте тот же, что и для первого примера. Мы использовали тот же RemoveNone.py и просто внесли в него изменения.

my_list = [2, None, 3, None, None, 8, None, 9] print ("My list is : " + str(my_list)) result = [i for i in my_list if i] print ("List after removing None values : " + str(result))

Итак, для начала мы инициализируем и выводим на экран исходный список. Здесь все так же, как в предыдущем примере.

Но, в отличие от первого примера, здесь для исключения значений None мы применяем синтаксис генератора списков.

Функция print() , идущая в конце, выводит на экран новый отфильтрованный список, в котором есть только значения, отличные от None .

Сохраните файл и запустите код, чтобы проверить вывод.

Output: My list is : [2, None, 3, None, None, 8, None, 9] List after removing None values : [2, 3, 8, 9]

Мы получили желаемый результат. Он такой же, как в предыдущем примере, но данный способ является более эффективным с точки зрения временных затрат.

Заключение

Мы разобрали, как удалить None из списка в Python. Помимо двух рассмотренных нами методов, вы также можете использовать функцию filter() .

Теперь удаление элементов None из вашего списка не будет для вас проблемой.

Источник

How to remove none from list python (5 Ways)

remove none from list Python

In this article, we are solving the problem of how to remove none from list python. This type of problem in Python can be solved in many ways, we will be looking in 5 ways to remove none from list in python.

What is none in python?

None is a keyword in Python used to define a null value or no value at all. It is not the same as an empty string or zero, or false value, it is the data type of the class NoneType in Python.

We can declare none variable as –

a = None print("Value of a is", a) print("Type of a is", type(a))

Value of a is None Type of a is

Why should we remove none from list Python?

When analyzing a large set of data, it is likely that we come across with none values or missing values. To make sure data is clean and tidy for data analysis and data representation removing null values from list data in python is important.

Since null values affect the performance and accuracy of machine learning algorithms it is necessary to handle these none values from data sets before applying the machine learning algorithm. Removing such unwanted null values, and corrupting data before processing the algorithm is called data preprocessing.

How to remove none from list Python

The 5 Ways to get rid of none in Python are as follows-

Method 1- Remove none from list using filter() method

The easiest way to remove none from list in Python is by using the list filter() method. The list filter() method takes two parameters as function and iterator. To remove none values from the list we provide none as the function to filter() method and the list which contains none values.

None – To eliminate none values we provide none as the function in the filter method

Iterator – An iterator like list, set, or tuple.

Python Code:

# List with none values sample_list = [1,2, True, None, False, None, 'Python', None] # Using filter() method to filter None values filtered_list = list(filter(None, sample_list)) print("List with None values: ", sample_list) print("List without None values", filtered_list)
List with None values: [1, 2, True, None, False, None, 'Python', None] List without None values [1, 2, True, 'Python']

Method 2- Naive Method

We can also remove none from list in python using a for loop and check whether the values are none if yes ignore it and the rest of the values can be appended to another list.

Python Code:

# List with none values sample_list = [1,2, True, None, False, None, 'Python', None] # initialize filtered list filtered_list = [] # Using for loop for ele in sample_list: if ele != None: filtered_list.append(ele) print("List with None values: ", sample_list) print("List without None values", filtered_list) 
List with None values: [1, 2, True, None, False, None, 'Python', None] List without None values [1, 2, True, 'Python']

Method 3- Using For loop + list remove()

To remove none from list python we will iterate over the list elements and compare each element with none if we find any none element we will remove none element from the list using the python list remove() method.

The list remove() method takes a single lament as an argument and removes that element from the list.

Python Code:

# List with none values sample_list = [1,2, True, None, False, None, 'Python', None] #Printing define list print("List with None values:", sample_list) # Using for loop and remove method for ele in sample_list: if ele == None: sample_list.remove(ele) # print list after removing none print("List without None values:", sample_list) 
List with None values: [1, 2, True, None, False, None, 'Python', None] List without None values [1, 2, True, 'Python']

Method 4- Using List Comprehension

To remove none values from list we also use list comprehension. In Python, list comprehension is a way to create a new list from existing other iterables like lists, sets, and tuples. We can also say that list comprehension is a shorter version of for loop. To know about list comprehension you can visit this.

Python Code:

# List with none values sample_list = [1,2, True, None, False, None, 'Python', None] # Using List comprehension to remove none values filtered_list = [ ele for ele in sample_list if ele is not None ] print("List with None values: ", sample_list) print("List without None values", filtered_list) 
List with None values: [1, 2, True, None, False, None, 'Python', None] List without None values [1, 2, True, 'Python']

Method 5- Using Filter() + lambda function

In python, the lambda function is an anonymous function that is without any name. It takes any number of arguments but can only perform one expression.

As we discuss above filter() method takes a function as input, and since lambda is also one kind of method in python, hence we provide a lambda function and an iterator as input arguments to the filter method.

Example - filter(lambda_function, iterator)

Python code:

# List with none values sample_list = [1,2, True, None, False, None, 'Python', None] # Using filter() method + lambda filtered_list = list(filter(lambda ele:ele is not None, sample_list)) print("List with None values: ", sample_list) print("List without None values", filtered_list)
List with None values: [1, 2, True, None, False, None, 'Python', None] List without None values [1, 2, True, 'Python']

Conclusion

Hence we have seen how to remove none from list python in 5 different ways. We can remove none from list python by using filter(), naive method, for loop + remove(), using list comprehension, and filter() + lambda function.

I am Passionate Computer Engineer. Writing articles about programming problems and concepts allows me to follow my passion for programming and helping others.

Источник

How to Remove None from List in Python : Know the various Methods

Importerror no module named setuptools Fix

A list is a data structure that allows you to create a mutable or changeable ordered sequence of elements. In python, it is created using the square bracket []. Inside it, each element is separated by a comma. The value inside the list is known as an element. But there can be also values that do not represent anything that is None. In this entire tutorial, you will learn the various ways to remove none from the list in python.

But before going to the methods section let’s create a sample list that contains None value in it. Execute the below lines of code to create a sample array.

Sample list contain None as a item

Output

Methods to Remove None from List in Python

Let’s know the various methods to remove the None value from the list.

Method 1 : Use the fliter() function

Python provides the filter() function that accepts the one argument as a function and the second argument as the list for applying that function.

Run the below lines of code to return a new list that will contain only numbers without None value.

Method 2: Use List Comprehension

Another method to remove None from List in Python is List comprehension. It is a powerful feature of python that allows you to create a new list from the existing list after doing some manipulation on it.

Execute the below lines of code to remove the None value.

Method 3: Using the remove() function

The third method for removing the None from the List in python is the use of the remove() function. Here you have to iterate each element of the list and use the remove() method to remove the element containing the None value.

sample_list = [10,20,30,None,40,None,50] for ele in sample_list: if ele is None: sample_list.remove(ele) print(sample_list) 

Method 4: Using the count() function

The count() function allows you to count the number of elements in the list. As the None does not count to value therefore to remove the None value you will use this function.

Run the below lines of code.

Method 5: Remove None from List in Python using map() function

The fifth method to remove None from the List is the use of map() function. Inside the map() function the first argument will be lambda function and the second is the input list.

It will returns the new list without the None value.

Conclusion

The list is a widely used data structure in Python projects. Sometimes you may get the None values in the list and this makes it difficult to do some manipulation on it. So if you want to remove the None from the list then use the above methods.

I hope you have liked this tutorial. If you have any other methods then you can contact us for adding them here.

Join our list

Subscribe to our mailing list and get interesting stuff and updates to your email inbox.

We respect your privacy and take protecting it seriously

Thank you for signup. A Confirmation Email has been sent to your Email Address.

Источник

Оцените статью