可以使用列表理解在单行中完成吗?
lst = [[1, 2, 3], [1, 2, 3, 4], [5, 6], [9]]
products = ?? (Multiple each list elements)
Run Code Online (Sandbox Code Playgroud)
期望的输出= [6, 24, 30, 9]
我尝试过类似的东西:
products = [l[i] * l[i + 1] for l in lst for i in range(len(l) - 1)]
Run Code Online (Sandbox Code Playgroud)
但没有奏效.
环境:
我们使用回调 API 来使用 MongoDB 事务。Core API 也会发生同样的情况。
样本:
private ThreadLocal<MongoOperations> sessionMongoTemplate;
try (final ClientSession session = getClientSession()) {
this.sessionMongoTemplate = ThreadLocal.withInitial(() -> getMongoOperations().withSession(session));
session.withTransaction(() -> {
// do some work
// call a method which does (sessionMongoTemplate.get().insert(entity);)
// (this throws WriteConflict Error)
});
}
Run Code Online (Sandbox Code Playgroud)
错误:
com.mongodb.MongoCommandException:命令失败,错误 112(WriteConflict):'WriteConflict 错误:此操作与另一个操作冲突。请重试您的操作或多文档事务。” 在服务器 abc.mongodb.net:1234 上。完整响应为 { "errorLabels": [ "TransientTransactionError" ], "ok": 0, "errmsg": "WriteConflict 错误:此操作与另一个操作冲突。请重试您的操作或多文档事务。", "code ": 112, "codeName": "写入冲突"
查询: …
我正在使用Beautifulsoup(bs4)废弃HTML页面.它有一个列表<ul>,其中<li>包含一些有趣的链接(href).
片段:
<ul>
<!-- C 1-3 --></p>
<li>
<a href="http://LINK1" target="_blank">Link1 description</a>
</li>
</ul>
<ul>
<!-- E 1-2-3-6 --></p>
<li>
<a href="LINK-2" target="_blank">Link-2 description</a>
</li>
<p><!-- E 4-5 -7-8-9-10-11 --></p>
</ul>
Run Code Online (Sandbox Code Playgroud)
问题:当我find_all()用来提取全部<ul>- 我没有得到它,因为错误的结局</p>,缺少开放<p>.浏览器忽略了这个并且渲染正常,但是BS4搞砸了解析.有人试图忽略BS4中任何格式错误的标签吗?
entries = soup.find_all(lambda x: x.name == 'ul')
print(len(entries))
print(entries[0])
1
<ul>
<!-- C 1-3 --></ul>
Run Code Online (Sandbox Code Playgroud)