python - 使用可变 obj 转换为列表推导
问题描述
对于以下内容:
data = []
for item in self.matches:
for k,v in item.items():
if isinstance(v, Decimal):
item[k]=float(v)
data.append(item)
是否可以将上述内容转换为列表理解(主要是由于项目的可变性)?如果是这样,如何做到这一点?
解决方案
您可以定义一个函数来执行内部循环,然后在列表理解中调用它。
def decimal_to_float(item):
for k, v in item.items():
if isinstance(v, Decimal):
item[k]=float(v)
return item
data = [decimal_to_float(item) for item in self.matches]
推荐阅读
- python - 自动化无聊的东西第 7 章:正则表达式 - 电话号码和电子邮件提取器仅提取电话号码
- php - 基于 tr 计数的 td/th 的 XPath
- jenkins - 由于语法问题,无法执行 Jenkins 管道
- django - 在 AWS 上免费部署 Django VC,哪个最好?只是 EC2.t2 或 Beanstalk
- node.js - 在 Express.js 中发出请求和响应处理程序会导致问题吗?
- eclipse - 什么是 Buildship,是否有适用于 NetBeans 的 Gradle 插件?
- amazon-web-services - 从区域 A 到其他各个区域的多区域 EC2 和 RDS 复制
- python - 终端和 subprocess.run() 显示命令的不同行为(osmfilter)
- sql - 需要查询以列出两列相对相同的行,但需要注意 Postgresql
- android - Pepper 机器人已连接但在连接的设备上显示离线