鱼C论坛

 找回密码
 立即注册
查看: 843|回复: 7

关于print()+print()的一个问题

[复制链接]
发表于 2019-1-15 21:19:38 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
>>> print('a')+print('b')
a
b
Traceback (most recent call last):
  File "<pyshell#1>", line 1, in <module>
    print('a')+print('b')
TypeError: unsupported operand type(s) for +: 'NoneType' and 'NoneType'

为啥又显示结果又说有错误
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-1-15 21:30:37 | 显示全部楼层
本帖最后由 凌九霄 于 2019-1-15 21:35 编辑

报错是因为print没有返回值,所以并不能 +
而打印了结果是因为优先级的问题,先将函数的结果计算出来(你这里是打印),最后执行 +  ,且这个结果并非你要的结果"ab"
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-1-15 21:34:49 | 显示全部楼层
凌九霄 发表于 2019-1-15 21:30
因为print没有返回值,所以并不能 +

那结果里的a回车b是什么意思?“
我以为如果有语法错误的话,结果就直接是syntax error (然后再解释一堆英文)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-15 21:36:10 | 显示全部楼层
本帖最后由 凌九霄 于 2019-1-15 21:40 编辑
deku_desu 发表于 2019-1-15 21:34
那结果里的a回车b是什么意思?“
我以为如果有语法错误的话,结果就直接是syntax error (然后再解释一 ...


print缺省就是带换行的。你这里是特殊情况,因为调用的是print,换其他函数直接就是最下面的报错信息。另外,语法上并没有错误
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-1-15 21:59:00 | 显示全部楼层
凌九霄 发表于 2019-1-15 21:36
print缺省就是带换行的。你这里是特殊情况,因为调用的是print,换其他函数直接就是最下面的报错信息。 ...

缺省是什么意思
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-1-15 22:50:04 | 显示全部楼层

就是你说的打印了‘a’后加上了回车的意思。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-1-18 13:04:35 | 显示全部楼层
iwanna 发表于 2019-1-17 14:05
函数有个默认参数end指定每次打印完之后多加的字符,默认是'\n'换行符,如果是print('a',end='')就指导了end ...

返回值什么意思
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-3-30 14:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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