如何在python列表中添加一个点

时间:2014-04-08 13:04:41

标签: python

如何在Python列表中添加点?

例如

 groups = [0.122, 0.1212, 0.2112]

如果我想输出这些数据,我该如何制作它就像

122, 1212, 2112

我尝试写(群组...... [0])和进一步的研究,但没有走得太远。感谢。

三江源

3 个答案:

答案 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']

列表理解正在执行以下操作:

  
      
  • 将每个列表元素转换为字符串
  •   
  • 将字符串拆分为“。”字符
  •   
  • 将子字符串返回到分割
  • 的右侧   
  • 根据以上逻辑
  • 返回一个列表