python列表去空值
时间: 2023-07-23 14:16:24 浏览: 161
你可以使用Python中的以下方法来去除列表中的空值:
1. 使用列表推导式:
```python
my_list = [None, 1, 2, None, 3, 4]
new_list = [i for i in my_list if i is not None]
print(new_list)
```
输出:`[1, 2, 3, 4]`
2. 使用filter()函数:
```python
my_list = [None, 1, 2, None, 3, 4]
new_list = list(filter(lambda x: x is not None, my_list))
print(new_list)
```
输出:`[1, 2, 3, 4]`
3. 使用列表解析:
```python
my_list = [None, 1, 2, None, 3, 4]
new_list = [i for i in my_list if i]
print(new_list)
```
输出:`[1, 2, 3, 4]`
注意:第三种方法中,空值、0、空字符串、空列表、空元组、空字典等都会被认为是False,会被去除。如果你只想去掉None,建议使用第一种或第二种方法。
相关问题
python列表去掉空值
可以使用列表推导式来去掉列表中的空值,例如:
```
my_list = ["hello", "", "world", None, " ", "goodbye"]
new_list = [item for item in my_list if item]
print(new_list)
```
输出:
```
['hello', 'world', ' ', 'goodbye']
```
在上面的例子中,我们使用了列表推导式来创建一个新的列表 `new_list`,它只包含原列表 `my_list` 中非空的元素。`if item` 这个条件语句判断了元素是否为真值(非空字符串、非零数字等),如果是,则将其添加到新列表中。
python字典去除空值
在Python中,可以使用字典推导式和内置函数来去除字典中的空值(None、空字符串和空列表等)。具体实现方法如下:
1. 字典推导式
```python
original_dict = {"a": 1, "b": None, "c": "", "d": []}
new_dict = {k: v for k, v in original_dict.items() if v is not None and v != "" and v != []}
print(new_dict)
# 输出:{"a": 1}
```
2. 内置函数filter()配合lambda表达式
```python
original_dict = {"a": 1, "b": None, "c": "", "d": []}
new_dict = dict(filter(lambda x: x is not None and x != "" and x != [], original_dict.items()))
print(new_dict)
# 输出:{"a": 1}
```
阅读全文