python - 如何从元组列表中删除项目
问题描述
我正在收集位于维基百科信息框中的信息。我将数据存储在列表中。但是,我检索到的第一个 span 标签存储了一个图像。我想从列表中删除图像。
for my_tables in my_table:
row1 = my_table.find_all('th',{'scope':'row'})
row2 = my_table.find_all('td')
for my_tables in my_table.find_all('td'):
grab_text2 = (my_tables.text, my_tables.next_sibling)
row2_list.append(grab_text2)
print (row2_list)
当前输出为:
[('', None),
('11 August 1902\xa0(1902-08-11)Paris, France', None),
('29 July 1991(1991-07-29) (aged\xa088)Paris, France', None),
('\xa0France', None), ('\xa0French Army', None), ('1921-1959', None),
('General de brigade', None),
('Mobile Group 2Mobile Group 1Operational Group North-West', None),
('World War IIFirst Indochina War*Battle of Dien Bien Phu', None)]
' ('', None) ' 是图像。
解决方案
如果您想删除任何空白项目,可以通过简单的列表理解来完成
row2_new = [item for item in row2_list if item[0]]
row2_new 现在将包含
[('11 August 1902\xa0(1902-08-11)Paris, France', None), ('29 July 1991(1991-07-29) (aged\xa088)Paris, France', None), ('\xa0France', None), ('\xa0French Army', None), ('1921-1959', None), ('General de brigade', None), ('Mobile Group 2Mobile Group 1Operational Group North-West', None), ('World War IIFirst Indochina War*Battle of Dien Bien Phu', None)]
如果您只想删除第一个元素,则可以进行简单的切片操作。
row2_new = row2_list[1:]
推荐阅读
- javascript - 如何在递归方法中添加求和列表?
- c - 将字符串附加到二维字符数组?
- r - R -ggplot 单独列的两个箱线图
- firebase - Firebase 云功能 - 出站网络 - 问题
- ionic-framework - 离子应用程序启动时,Android 8 连接到权限弹出允许/拒绝事件
- algorithm - 资格跟踪算法,更新顺序
- python - 自定义 Python unidecode 模块
- visual-studio - Visual Studio 找不到 debuggerutils.h
- php - 为什么我的 MySQL 事件调度程序没有运行?
- botframework - 清除对话窗口