首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python将字符串文字转换为浮点型

Python将字符串文字转换为浮点型
EN

Stack Overflow用户
提问于 2014-01-19 11:03:32
回答 20查看 6.7K关注 0票数 5

我正在阅读Guttag博士的书“使用Python进行计算和编程的简介”。我正在做第三章的手指练习,我被卡住了。是第25页的3.2节。练习是:假设一个字符串包含一个用逗号分隔的十进制数字序列,例如s = '1.23,2.4,3.123'。编写一个程序,打印s中数字的求和。

前面的示例是:

代码语言:javascript
复制
total = 0
for c in '123456789':
    total += int(c)
print total.

我试了一次又一次,但一直收到各种错误。这是我最新的尝试。

代码语言:javascript
复制
total = 0
s = '1.23,2.4,3.123' 
print s
float(s)
for c in s:
    total += c
    print c
print total    
print 'The total should be ', 1.23+2.4+3.123

我得到了ValueError: invalid literal for float(): 1.23,2.4,3.123.

EN

回答 20

Stack Overflow用户

发布于 2014-01-19 11:07:16

浮点值不能有逗号。您正在将1.23,2.4,3.123原样传递给浮点函数,这是无效的。首先根据逗号拆分字符串,

代码语言:javascript
复制
s = "1.23,2.4,3.123"
print s.split(",")        # ['1.23', '2.4', '3.123']

然后将该列表中的每个和和每个元素转换为浮点型,并将它们相加得到结果。为了感受Python的威力,这个特殊的问题可以通过以下方式解决。

您可以找到total,如下所示

代码语言:javascript
复制
s = "1.23,2.4,3.123"
total = sum(map(float, s.split(",")))

如果元素的数量太大,可以使用生成器表达式,如下所示

代码语言:javascript
复制
total = sum(float(item) for item in s.split(","))

所有这些版本都将产生相同的结果

代码语言:javascript
复制
total, s = 0, "1.23,2.4,3.123"
for current_number in s.split(","):
    total += float(current_number)
票数 6
EN

Stack Overflow用户

发布于 2015-12-25 16:34:22

代码语言:javascript
复制
total = 0
s = '1.23,2.4,3.123'
for c in s.split(','):
    total = total + float(c)
print(total)
票数 2
EN

Stack Overflow用户

发布于 2015-09-12 01:53:35

像魔符这样的作品只用了我学到的东西

代码语言:javascript
复制
    s = raw_input('Enter a string that contains a sequence of decimal ' +  
                   'numbers separated by commas, e.g. 1.23,2.4,3.123: ')

    s = "," + s+ "," 

    total =0

    for i in range(0,len(s)):

         if s[i] == ",":

              for j in range(1,(len(s)-i)):

                   if s[i+j] == ","
                   total  = total + float(s[(i+1):(i+j)])
                   break
     print total
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21212706

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档