python列表删除列
时间: 2023-11-22 20:44:24 浏览: 36
要删除列表中的某一列,可以使用列表推导式和切片操作。具体步骤如下:
1. 将列表转置,使得要删除的列变成行。
2. 使用列表推导式,筛选出不需要删除的行。
3. 再次将列表转置,得到最终结果。
下面是示例代码:
```python
lst = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
col_to_delete = 1
# 转置列表
lst_T = list(map(list, zip(*lst)))
# 列表推导式,筛选出不需要删除的行
new_lst_T = [row for i, row in enumerate(lst_T) if i != col_to_delete]
# 再次转置列表
new_lst = list(map(list, zip(*new_lst_T)))
print(new_lst)
```
输出结果为:
```
[[1, 3], [4, 6], [7, 9]]
```
相关问题
python 删除列表一列
要删除列表中的一列,可以使用 del 语句和切片操作。例如,如果要删除第二列,可以使用以下代码:
```
my_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
for row in my_list:
del row[1]
print(my_list)
```
输出:
```
[[1, 3], [4, 6], [7, 9]]
```
注意,这个操作会改变原始列表。如果不想改变原始列表,可以使用切片创建一个新的列表。例如,如果要创建一个没有第二列的新列表,可以使用以下代码:
```
my_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
new_list = [row[:1] + row[2:] for row in my_list]
print(new_list)
```
输出:
```
[[1, 3], [4, 6], [7, 9]]
```
pythondataframe删除列
你可以使用pandas库中的drop函数来删除python dataframe中的列。下面是一个例子:
```python
import pandas as pd
# 创建一个示例dataframe
data = {'A': [1, 2, 3, 4],
'B': [5, 6, 7, 8],
'C': [9, 10, 11, 12]}
df = pd.DataFrame(data)
# 删除列B
df.drop('B', axis=1, inplace=True)
# 打印删除列后的dataframe
print(df)
```
这将输出以下结果:
```
A C
0 1 9
1 2 10
2 3 11
3 4 12
```