0
我正在使用正则表达式将文件中的数字移动到列表中,然后将所有数字加起来。我在理解什么时候需要将数值放入数值括号中成为浮点数时遇到问题。我想知道怎么把()把int更改为漂浮在值
import re
fhand = open('regex_sum_42.txt')
numlist = list()
for line in fhand:
line = line.rstrip()
value = re.findall('([0-9.]+)', line)
num = float(value()) # Need to know what to put in the value() .
numlist.append(num)
print value
1.如果的findall返回一个列表,不会是直接浇注料为float。你想要转换列表的内容吗? 2.如果'value'不是一个列表,你可能不应该叫它。只要删除括号。 – Carcigenicate
're.findall'将始终返回一个列表。顺便说一下,如果你的输入是不可信的,我认为是因为你从文件中读取,这个正则表达式模式也会找到像'1234.1234.1234'这样的模式。无论如何,你应该把'map(float,value)'而不是'value()'。 – Szabolcs