全桥整流 发表于 2021-8-18 10:21:39

小甲鱼课后作业疑问

a=1
print(print('a')) #从左往右数

第二个print的输出是a,那上式变成print(a)
那继续print,那不就是输出1,了吗
但实际不是这样
为什么会这样?

又或者
a=2
print(print(a))
第二个print的输出是2,那上式变成print(2)
那继续print,那不就是输出2,了吗

wp231957 发表于 2021-8-18 10:24:55

先内 后外

首先 输出内部的print输出
然后输出print函数的返回值   因为print没有返回值所以 输出None

louxinghao 发表于 2021-8-18 10:25:43

你没搞懂返回和输出的概念

print只能输出 返回值,print本身自己不返回任何值,所以不能print(print('xxx'))这样用

wp231957 发表于 2021-8-18 10:28:09

>>> print(print(print(print(1))))
1
None
None
None
>>>

1628622519 发表于 2021-8-18 10:48:25

louxinghao 发表于 2021-8-18 10:25
你没搞懂返回和输出的概念

print只能输出 返回值,print本身自己不返回任何值,所以不能print(print('xx ...

也就是说print(“a”)这个整体是没有值的?

louxinghao 发表于 2021-8-18 10:55:13

1628622519 发表于 2021-8-18 10:48
也就是说print(“a”)这个整体是没有值的?

是的,print('a') 你看到的是输出的内容,且不返回任何内容,所以再嵌套一个print的时候就不会有东西输出了
页: [1]
查看完整版本: 小甲鱼课后作业疑问