python - 如何准备字符串以使用不明确的数组进行格式化?
问题描述
我需要将数组格式化为字符串,但是字符串是事先准备好的并存储的。基本上我有一个看起来像这样的字符串列表:
text = [
'Data Item 1: %.2f',
'Data Item 2: %.2f',
'Data Item 3: %.2f'
]
然后循环遍历该列表,并将数据分配给它,如下所示:
for i in range(len(text)):
print(text[i] % data[i])
这工作正常,但现在我希望能够将一个字符串添加到我的文本列表中,稍后将与这样的列表项配对:
text = [
'Data Item 1: %.2f',
'Data Item 2: %.2f',
'Data Item 3: %.2f',
'Num List: <FORMATTING NEEDED>'
]
data = [0.3, 2.1, 4.9, [1, 2, 3, 4]]
for i in range(len(text)):
print(text[i] % data[i])
我希望这具有以下结果:
Data Item 1: 0.30
Data Item 2: 2.10
Data Item 3: 4.90
Num List: 1,2,3,4
到目前为止,与我正在寻找的最接近的东西看起来像这样:
'Num List: ['+", ".join(['%.2f']*len(x))+"]'
但我还没有'x'。我需要为不能立即使用的列表准备字符串。我希望我正确地解释了我的需求。
解决方案
您根据需要显示的结果没有列表的括号,但是在您的尝试代码中您正在使用它们,所以我假设它们没问题。
在这种情况下,您可以执行以下操作:
print('Num List: %s' % [1,2,3,4])
打印:
Num list: [1, 2, 3, 4]
推荐阅读
- python - 我将如何使用 python3 在网站中查找特定链接
- json - Flutter Dart Http XML rest 转换为 Json
- flutter - 如何在 Flutter 中实现这样的 UI?
- node.js - 异步 bcrypt 发布请求不返回响应
- java - 线程“JavaFX 应用程序线程”中的异常 java.lang.RuntimeException:java.lang.reflect.InvocationTargetException JavaFX FXML
- android-studio - 导入 Sceneform 资产不会生成 .sfa 和 .sfb 文件
- position - 如何获取控件后面的鼠标光标位置?
- python - Plotly:在 create_annotated_heatmap() 函数中定义 Z 参数的最佳方法
- python - 基于数字/数字的文本比较
- android - 如何不在嵌套布局中重复回收视图?