首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将输入内容读取为数字?

如何将输入内容读取为数字?
EN

Stack Overflow用户
提问于 2013-12-08 11:08:16
回答 7查看 987.2K关注 0票数 261

为什么在下面的代码中是xy字符串而不是in?

(注意:在Python2.x中使用raw_input()。在Python3.x中使用input()。在Python3.x中将raw_input()重命名为input() )

代码语言:javascript
复制
play = True

while play:

    x = input("Enter a number: ")
    y = input("Enter a number: ")

    print(x + y)
    print(x - y)
    print(x * y)
    print(x / y)
    print(x % y)

    if input("Play again? ") == "no":
        play = False
EN

回答 7

Stack Overflow用户

发布于 2013-12-08 11:09:11

在Python3.x中,raw_input被重命名为input,并删除了Python2.x input

这意味着,就像raw_input一样,Python3.x中的input总是返回一个string对象。

要解决这个问题,您需要通过将这些输入放入int中来显式地将它们转换为整数

代码语言:javascript
复制
x = int(input("Enter a number: "))
y = int(input("Enter a number: "))
票数 49
EN

Stack Overflow用户

发布于 2014-11-11 08:32:39

对于一行中的多个整数,map可能更好。

代码语言:javascript
复制
arr = map(int, raw_input().split())

如果这个数字是已知的(比如2个整数),你可以使用

代码语言:javascript
复制
num1, num2 = map(int, raw_input().split())
票数 32
EN

Stack Overflow用户

发布于 2014-07-08 08:13:19

多个问题需要在一行中输入多个整数。最好的方法是输入整个数字字符串一行,然后将它们拆分为整数。以下是Python 3的一个版本:

代码语言:javascript
复制
a = []
p = input()
p = p.split()      
for i in p:
    a.append(int(i))

也可以使用列表理解

代码语言:javascript
复制
p = input().split("whatever the seperator is")

为了将所有输入从字符串转换为int,我们执行以下操作

代码语言:javascript
复制
x = [int(i) for i in p]
print(x, end=' ')

应以直线打印列表元素。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20449427

复制
相关文章

相似问题

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