python - 使用 for 循环的格式打印(大)列表
问题描述
我手头有一个数组。现在我想要合并打印文本和数组条目,所以我会使用.format。
我现在想知道是否有一种方法可以使用该 for 循环(不是 a[0]、a[1]、a[2])来完成以下工作。
a = [1,2,3]
print("""
A is {}
B is {}
C is {}
""".format(i for i in a))
这个返回IndexError: tuple index out of range
解决方案
使用 将*
参数解包为参数列表:
a = [1,2,3]
print("""
A is {}
B is {}
C is {}
""".format(*[i for i in a]))
或者甚至更好,如果您不依赖于列表的各个内容;
a = [1,2,3]
print("""
A is {}
B is {}
C is {}
""".format(*a))
Python 以相同的方式读取这两者:*a
被解包为参数列表。您可以对字典做类似的事情(使用**
解包关键字参数的双精度):
a = {"alpha": 1, "beta": 2, "gamma":3}
print("""
A is {alpha}
B is {beta}
C is {gamma}
""".format(**a))
推荐阅读
- php - 保存自定义字段并邮寄给 WooCommerce 管理员
- boolean-logic - 带有未使用变量的布尔表达式?
- rust - 如何使用基于 Rust 的 Zola / Tera 过滤分类法?
- react-native - 如何从 WooCommerce API 获取产品数据到我的反应原生应用程序中
- angularjs - 如何在 angularJS 应用程序中创建可折叠的导航菜单?
- teamcity - 使用 YAML 文件作为输入的 Teamcity 构建
- python - Python:未知numpy数组列长度的len()
- asp.net-mvc - 如何在 Web 应用程序 Asp.Net MVC 中配置复选框 Materialize Css
- sails.js - 将适配器更改为sails-disk 或sails-memory 时,sails 无法升起
- docker - Ubuntu 上缺少 .docker 文件夹