本问题已经有最佳答案,请猛点这里访问。

我是Python的新手,我无法解决为什么这不起作用。

number_string = input("Enter some numbers:")

# Create List

number_list = [0]

# Create variable to use as accumulator

total = 0

# Use for loop to take single int from string and put in list

for num in number_string:

number_list.append(num)

# Sum the list

for value in number_list:

total += value

print(total)

基本上,我希望用户输入123例如然后得到1和2和3之和。

我收到此错误,不知道如何打击它。

Traceback (most recent call last):

File"/Users/nathanlakes/Desktop/Q12.py", line 15, in

total += value

TypeError: unsupported operand type(s) for +=: 'int' and 'str'

我只是在我的教科书中找不到答案,并且不明白为什么我的第二个for循环不会迭代列表并将值累加到total。

您需要先将字符串转换为整数,然后才能添加它们。

尝试更改此行:

number_list.append(num)

对此:

number_list.append(int(num))

或者,更多Pythonic方法是使用sum()函数,并使用map()将初始列表中的每个字符串转换为整数:

number_string = input("Enter some numbers:")

print(sum(map(int, number_string)))

但请注意,如果您输入类似"123abc"的内容,您的程序将崩溃。如果您有兴趣,请查看处理异常,特别是ValueError。

我同意这是一个有效的解决方案,但基于命名,将其添加到名为"number_list"的列表时将其转换为整数更有意义。 否则他每次使用数字时都需要施放。

同意,我编辑了我的帖子。

所以你建议当我附加到列表时,我追加int()

@Nate是的,这样就可以将字符串转换为整数,可以将其添加到total

我想人们已经正确地指出了代码中的缺陷,即从字符串到int的类型转换。然而,以下是编写相同逻辑的更加pythonic方式:

number_string = input("Enter some numbers:")

print  sum(int(n) for n in number_string)

在这里,我们使用了生成器,列表推导和库函数和。

>>> number_string ="123"

>>> sum(int(n) for n in number_string)

6

>>>

编辑:

number_string = input("Enter some numbers:")

print  sum(map(int, number_string))

或者sum(map(int, number_string))。

这是关于Python 3中输入的官方文档

input([prompt])

If the prompt argument is present, it is written to standard output without a trailing    newline. The function then reads a line from input, converts it to a string (stripping a trailing newline), and returns that. When EOF is read, EOFError is raised. Example:

>>> s = input('--> ')

--> Monty Python's Flying Circus

>>> s

"Monty Python's Flying Circus"

因此,当您在示例的第一行中执行输入时,您基本上会获得字符串。

现在你需要在总结之前将这些字符串转换为int。所以你基本上会这样做:

total = total + int(value)

关于调试:

在类似的情况下,当你遇到错误时:+ =''int'和'str'的不支持的操作数类型,你可以使用type()函数。

做类型(num)会告诉你它是一个字符串。显然无法添加string和int。

`

将行更改为:

total += int(value)

要么

total = total + int(value)

附:两个代码行都是等价的。

python列表for循环 加入新列表_关于python:使用for循环在列表中添加值相关推荐

  1. python中怎样向字典中添加值_python中向一个字典中加值

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 开发准备cas 的 python sdk 包含了用于访问和操作 cas 的所有 ...

  2. python编程快速上手第四章_《Python编程快速上手——让繁琐的工作自动化》读书笔记 第四章 列表...

    接下来我们来学习 python 中的列表(有点像 Java 中的数组,但并不是数组) "列表"是一个值,它包括多个字构成的序列,术语"列表值"指的是列表本身(它 ...

  3. 小甲鱼python课后题和答案简书_【py小甲鱼笔记】-列表

    要点:通过print(dir(list))来查看列表的所有方法,然后通过help(list.index).help(list.sort) 等查看帮助文档,这样就可以快速了解列表的每一个函数的用法 一. ...

  4. python将对象放入列表根据某个属性排升序_对python 对象列表根据某个属性排序的方法...

    对于一个已有的python list, 里面的内容是一些对象,这些对象有一些相同的属性值, 在一些特定的情况下,需要自己选择特定的排序,也就是根据某一个具体的属性来排序,在网上找了下资料,一般来说有两 ...

  5. python循环爬取页面_使用for或while循环来处理处理不确定页数的网页数据爬取

    本文转载自以下网站: Python For 和 While 循环爬取不确定页数的网页  https://www.makcyun.top/web_scraping_withpython16.html 需 ...

  6. python用循环结构求平均值_有python的输出问题;循环总数和平均值

    我的嵌套循环有一些输出问题,通常我会使用break在代码中添加一些行或print() 当我在我的代码中使用print()时,我的输出看起来像是在新行上输入总数而不是我想要的 以下是我当前输出的图片,我 ...

  7. python数据可视化从入门到实战_《Python编程从入门到实践》json数据可视化练习详解...

    <Python编程从入门到实践>16.2中,计算收盘价均值的程序有些不易看懂,结合我自己的理解进行一些说明. 使用的数据集:join格式的数据, 数据集是由多个字典为元素组成的列表.每个字 ...

  8. python交互式编程入门先学什么_为什么 Python 对于编程入门学习来说,是一门很棒的语言...

    在这篇文章里,我会来阐述下为什么我觉得 Python 对于计算机编程入门教学来说是一门很棒的编程语言(对基础编程课程更多观点可以查看这篇文章).这也是从我针对初学者Python 编程教学过程中获得并总 ...

  9. python切片操作的几种格式_【Python杂记】第四篇:序列切片

    使用python处理问题的过程中,经常会遇到从某个序列中抽取部分值的情况."切片"操作正是专门用于实现这一目的的方法. 实际上,可以通过单次或多次切片操作实现任意目标值切取.切片操 ...

  10. python基础面试都问什么问题_基本 Python 面试问题

    def Stack(object): def __init__(self): self.stack = [] def push(self,value): # 进栈 self.stack.append( ...

最新文章

  1. 教你用Python表达母亲节的祝福
  2. android登录窗口——基础编
  3. kotlin学习笔记——类型、变量、属性
  4. c#执行存储过程的简单实例
  5. 【数字图像处理】C++读取、旋转和保存bmp图像文件编程实现
  6. 如何处理“转换数据类型错误”错误?
  7. XNOR.ai融资1200万美元
  8. 覆盖17类面试题小结
  9. html页面背景位置,html5background位置
  10. AGV调度系统开发1(电子地图编辑软件)
  11. 神经网络论文Enhancing deep neural networks via multiple kernel learning
  12. 录入年、月、日,判断日期的合法性
  13. 谈微软 KMS 激活
  14. MatlabR2014a安装工具包
  15. 服务器光盘的正确使用方法,使用光盘刻录服务器,自动备份数据到光盘(成功案例)...
  16. 微信小游戏Banner广告
  17. python工程师必备工具
  18. c++中的 for_each 函数
  19. c++中using的几种用法
  20. ubuntu系统下破解Clion

热门文章

  1. K12在线教育行业市场规模及发展前景
  2. 【halcon】halcon常用方法总结
  3. 10 个“疯狂”的 Python 项目创意
  4. python实现SOR迭代法
  5. Flie输入输出字节流
  6. Codeforces 1182E Product Oriented Recurrence 矩阵快速幂
  7. seo是什么意思,seo是什么意思 职业
  8. C语言:计算数组元素平均值
  9. 一个零基础学python能学会吗_零基础可以学Python吗
  10. 聊聊所谓的弹性工作制