Python中文
首页
教程
问答
标签
搜索
登录
注册
任意嵌套Lis中的del算子
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在处理一个nltk.tree.ParentedTree树,但我认为这个问题比这更普遍。你知道吗</p> <p>基本上,我有一个任意深度嵌套的列表,我想删除列表的一部分(尽管我不知道该部分嵌套的深度)。我有一个<code>search</code>函数,用于查找列表中某个项的出现,它返回一个<code>n</code>整数元组,其中<code>n</code>是找到的元素的深度。你知道吗</p> <p>例如,假设我有<code>l = [[['cat', 'dog']], ['fish']]</code>,当我调用<code>search(l, 'dog')</code>时,它返回<code>(0, 0, 1)</code>。这告诉我<code>l[0][0][1] == 'dog'</code>。如果我提前知道<code>'dog'</code>发生在<code>(0, 0, 1)</code>,我可以通过执行<code>del l[0][0][1]</code>将其从列表中删除。但我不知道提前,所以我需要编程做同样的事情。你知道吗</p> <p>我可以通过执行以下操作访问列表中的元素<code>'dog'</code></p> <pre><code>indices = search(l, 'dog') for i in indices: l = l[i] </code></pre> <p>所以现在<code>l</code>就是<code>'dog'</code>。但是,我不知道如何从列表中删除它。我不只是想把它设成<code>None</code>。你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>尝试:</p> <pre><code>del reduce(lambda cur, ind: cur[ind], index_list[:-1], l)[index_list[-1]] </code></pre> <p>这真的是一种更为奇特的方式,完全符合@Martijn Pieters在回答中的建议。你知道吗</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
无法使用Django/mongoengine连接到MongoDB(身份验证失败)
1 回答
无法使用Django\u mssql\u后端迁移到外部hos
8 回答
无法使用Django&Python3.4连接到MySql
10 回答
无法使用Django+nginx上载媒体文件
9 回答
无法使用Django1.6导入名称模式
8 回答
无法使用Django1.7和mongodb登录管理站点
10 回答
无法使用Djangoadmin创建项目,进程使用了错误的路径,因为我事先安装了错误的Python
3 回答
无法使用Djangockedi验证CBV中的字段
9 回答
无法使用Djangocketditor上载图像(错误400)
4 回答
无法使用Djangocron进行函数调用
8 回答
无法使用Djangofiler djang上载文件
7 回答
无法使用Djangokronos
4 回答
无法使用Djangomssql provid
6 回答
无法使用Djangomssql连接到带有Django 1.11的MS SQL Server 2016
5 回答
无法使用Djangomssq迁移Django数据库
4 回答
无法使用Djangonox创建用户
6 回答
无法使用Djangopyodb从Django查询SQL Server
5 回答
无法使用Djangopython3ldap连接到ldap
7 回答
无法使用Djangoredis连接到redis
3 回答
无法使用Django中的FK创建新表
10 回答