找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 2293|回复: 3

[求助] python小白第一天看书学习,遇到问题求助

1

主题

2

帖子

2

积分

贫民

积分
2
francois840413 发表于 2018-7-17 05:50:25 | 显示全部楼层 |阅读模式
各位好!第一天看书学习。书是人民邮电出版社出版的Python基础教程(第2版 修订版)。使用的编程软件版本是python 3.7.0
刚看到input(...)语句,按照书上的例子:
>>>x=input("x:")
x:34
>>>y=input("y:")
y:42
>>>print x*y
我按照书上的输入,但出现的是这个:SyntaxError: Missing parentheses in call to 'print'. Did you mean print(x*y)?
然后我试着print (x*y)
提示Traceback (most recent call last):
  File "<pyshell#27>", line 1, in <module>
    print(x*y)
TypeError: can't multiply sequence by non-int of type 'str'
就是不显示书上两个变量相乘后的结果。
请问哪样才是正确的输入。非常感谢!
回复

使用道具 举报

17

主题

85

帖子

85

积分

新手

积分
85
我是吃货 发表于 2018-7-17 13:06:52 | 显示全部楼层
这个嘛,应该是这样:
  1. x = int(input("x: "))
  2. y = int(input("y: "))
复制代码

然后:
  1. print(x*y)
复制代码

回复 支持 反对

使用道具 举报

17

主题

85

帖子

85

积分

新手

积分
85
我是吃货 发表于 2018-7-17 13:50:34 | 显示全部楼层
因为你不管输什么,Python都会当字符串返回:
字符串*字符串=错误
关键字int能把数字字符串转换为数字。
回复 支持 反对

使用道具 举报

1

主题

2

帖子

2

积分

贫民

积分
2
francois840413  楼主| 发表于 2018-7-17 15:15:11 | 显示全部楼层
我是吃货 发表于 2018-7-17 13:06
这个嘛,应该是这样:

然后:

非常感谢!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表