Python 将空字符串转换为零
我这样做是为了从头到尾总结所有的价值观Python 将空字符串转换为零,python,string,casting,io,Python,String,Casting,Io,我这样做是为了从头到尾总结所有的价值观 big_list = line.split(delim) sum( [int(float(item)) for item in big_list[start:end]] ) 有时,big_list的元素可能为空,在这种情况下,转换失败。我能以优雅的方式处理空字符串,而不在上面做太多更改吗?假设空元素应为零: sum(int(float(item)) for item in big_list[start:end] if item)
big_list = line.split(delim)
sum( [int(float(item)) for item in big_list[start:end]] )
有时,
big_list
的元素可能为空,在这种情况下,转换失败。我能以优雅的方式处理空字符串,而不在上面做太多更改吗?假设空元素应为零:
sum(int(float(item)) for item in big_list[start:end] if item)
# ^ skip over ""
请注意:
sum
可以将生成器表达式作为参数,无需构建列表;及“
计算False
-y,因此这相当于if item!=“”
我会用这个。。。不过,为了完整起见:
int(float(item或0))
是另一个选项(如果正在构建列表并且需要平均值,则可能更有用),但对于简单的求和
,筛选更为合理。是否要将值从float截断为int?