如何在Python列表中添加点?
例如
groups = [0.122, 0.1212, 0.2112]
如果我想输出这些数据,我该如何制作它就像
122, 1212, 2112
我尝试写(群组...... [0])和进一步的研究,但没有走得太远。感谢。
三江源
答案 0 :(得分:2)
[str(g).split(".")[1] for g in groups]
结果
['122', '1212', '2112']
修改强>
像这样使用:
groups = [0.122, 0.1212, 0.2112]
decimals = [str(g).split(".")[1] for g in groups]
答案 1 :(得分:0)
这应该这样做:
groups = [0.122, 0.1212, 0.2112]
import re
groups_str = ", ".join([str(x) for x in groups])
re.sub('[0-9]*[.]', "", groups_str)
[str(x) for x in groups]
会生成项目的字符串。", ".join
会将这些项目连接起来。 import re
允许您替换正则表达式:
re.sub
,使用正则表达式替换任何数字后跟一个点。使用Lutz的回答,这也适用于有整数(无点)的情况:
decimals = [str(g).split("0.") for g in groups]
decimals = decimals = [i for x in decimals for i in x if i != '']
当你有像11.11
之类的数字时,它将无效,其中有一个你不想忽略的部分。
答案 2 :(得分:0)
您可以使用列表推导并返回字符串列表
groups = [0.122, 0.1212, 0.2112]
[str(x).split(".")[1] for x in groups]
结果
['122', '1212', '2112']
列表理解正在执行以下操作:
- 将每个列表元素转换为字符串
- 将字符串拆分为“。”字符
- 将子字符串返回到分割
的右侧- 根据以上逻辑
返回一个列表