python-3.x - 划分每个子列表中的某些元素
问题描述
b = [[2021, 55, -0.65, 7.61, 10.65, 41.37, 3.39, 12.25, -10.14, 7.61, 8.84],
[2022, 56, 3.0, -0.13, 8.84, 27.25, -0.48, 2.54, 12.43, 7.56, 3.37]]
我想将 b 中每个子列表的元素 [2:10] 除以 100。预期结果:
a = [2021, 55, -0.0065, 0.0761, 0.1065, 0.4137, 0.0339, 0.1225, -0.1014, 0.0761, 0.0884], etc
我试过了:
a = [item[2:10] /100 for item in b] Also tried: a = [item[2:10] / 100 for item in x] for x in b]
第一个给出“不支持的 / 操作数类型:list 和 int”。第二个给出“int object not subscriptable”
解决方案
你的列表理解中的一个小错误,你在错误的地方切片。你需要做的是:
a = [x[:2] + [item / 100 for item in x[2:]] for x in b]
print(a)
输出:
[[2021, 55, -0.006500000000000001, 0.0761, 0.1065, 0.41369999999999996, 0.0339, 0.1225, -0.1014, 0.0761, 0.08839999999999999], [2022, 56, 0.03, -0.0013, 0.08839999999999999, 0.2725, -0.0048, 0.0254, 0.1243, 0.0756, 0.0337]]
推荐阅读
- smartcontracts - 查看与更改智能合约的方法
- objective-c - 文件上传到 Web 服务,在 Objective C 中不起作用
- tomcat - Apache Tomee 7.0.2 - 微服务的 Maven 编译错误
- entity-framework - EF Core 对同一实体的多次引用
- python - 如何在 Python Pandas 中合并行?
- unit-testing - 在 Flask 单元 pytest 中模拟 current_app
- c++ - 通过插入器获取向量中的索引
- javascript - 文件“firebase.json”在 React-Native-Firebase V6 中的位置
- python-3.x - 在 Python 中覆盖以前打印的行
- python-3.x - Python:是否有替代给定行/列(Windows10)缺少“打印在”的替代品?