如何正确执行?

时间:2018-12-13 06:34:41

标签: python python-3.x list

list1 = ['192,3.2', '123,54.2']

yx = ([float(i) for i in list1])

print(list1)

这是我拥有的代码,我正在尝试学习如何在字符串列表中删除remove,以供将来参考。我尝试了诸如映射的各种操作,但是由于num中的逗号,导致映射无法正常工作。

2 个答案:

答案 0 :(得分:2)

如果要从字符串中删除逗号,请使用:

list1 = string.split(",")

string 变量包含您的字符串输入,您以列表的形式获取输出,如果希望原始字符串不带逗号,则将该列表加入列表。

string_joined = "".join(list1)

string_joined 将包含不带逗号的字符串。


如果您希望字符串仅删除逗号并在该位置保留空白,则语法:

string = string.replace(","," ")

另外,我解释的第一句语法可以简化为一种语法:

string = string.replace(",","")

现在,如果要迭代字符串列表,请一次考虑列表中的每个元素(字符串):

for string in list1 :
    <your codes go here>

希望这能回答您所寻找的内容。

答案 1 :(得分:0)

我们可以进行正则表达式来删除非数字字符以摆脱其他字符

import regex as re
print([float(re.sub("[^0-9|.]", "", s)) for s in list1])

没有正则表达式:

[float(s.replace(',','')) for s in list1 ] 

输出:

[1923.2, 12354.2]