python如何判断多维列表中某一位置为空
时间: 2024-09-07 08:05:12 浏览: 76
在Python中,判断多维列表(list of lists)中某个位置是否为空,你可以使用嵌套的if条件语句或者利用None检查。这里提供两种常见的方法:
1. **使用isinstance()函数**:
```python
def is_empty(position, multi_list):
if position[0] < len(multi_list) and position[1] < len(multi_list[position[0]]): # 检查索引是否越界
return multi_list[position[0]][position[1]] is None or multi_list[position[0]][position[1]] == [] # 判断元素是否为None或空列表
else:
return True # 如果索引超出范围,则默认该位置为空
# 使用示例
my_list = [[1, 2], [3, 4, 5], [], [7]]
print(is_empty([1, 2], my_list)) # 输出 False,因为该位置有值
print(is_empty([2, 3], my_list)) # 输出 True,因为该位置为空
```
2. **直接比较元素**:
```python
def is_position_empty(multi_list, position):
try:
return not multi_list[position[0]][position[1]] # 尝试访问元素,若不存在则会引发IndexError
except (IndexError, TypeError): # 防止索引越界或非数字类型的索引
return True
# 使用示例同上
print(is_position_empty(my_list, [1, 2])) # 输出 False
print(is_position_empty(my_list, [2, 3])) # 输出 True
```
阅读全文