鱼C论坛

 找回密码
 立即注册
查看: 2130|回复: 10

[已解决]小白求助

[复制链接]
发表于 2020-9-24 09:44:57 | 显示全部楼层 |阅读模式

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

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

x
name = 'amanda louis'
>>> print(name)
amanda louis
>>> print(name.title())
Amanda Louis
>>> name = print(name.title())
Amanda Louis
>>> print(name)
None

为什么最后变量为空了
最佳答案
2020-9-24 10:07:48
执行上面两行代码,你会发现结果不仅有abc,还有none
abc就来自括号里print(a)被执行了,而print函数的(返回值)类型是none,所以type(print)的打印结果为空
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-9-24 09:48:50 | 显示全部楼层
name = print(name.title())
你把这一步执行的print函数返回值赋值给了name,
它的返回值为None,覆盖掉原来的name
再次打印时当然为none了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-24 09:56:47 | 显示全部楼层
昨非 发表于 2020-9-24 09:48
你把这一步执行的print函数返回值赋值给了name,
它的返回值为None,覆盖掉原来的name
再次打印时当然 ...


>>> name = print(name.title())
Amanda Louis
>>> print(name)
None

上一步执行的print函数返回值赋值给name后,我感觉再次打印的结果是Amanda Louis
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-24 10:05:06 | 显示全部楼层
Hcl00 发表于 2020-9-24 09:56
>>> name = print(name.title())
Amanda Louis
>>> print(name)

上一步是因为执行了print,所以打印了出来,这个打印跟print的返回值无关
a="abc"

print(type(print(a)))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-24 10:07:48 | 显示全部楼层    本楼为最佳答案   
执行上面两行代码,你会发现结果不仅有abc,还有none
abc就来自括号里print(a)被执行了,而print函数的(返回值)类型是none,所以type(print)的打印结果为空
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2020-9-24 10:15:02 | 显示全部楼层
昨非 发表于 2020-9-24 09:48
你把这一步执行的print函数返回值赋值给了name,
它的返回值为None,覆盖掉原来的name
再次打印时当然 ...

再次打扰一下昨非大大,为什么print(name.title())的打印结果是Amanda Louis,赋值给name后,最后的打印结果不是Amanda Louis啊,
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-24 10:19:45 | 显示全部楼层
Hcl00 发表于 2020-9-24 10:15
再次打扰一下昨非大大,为什么print(name.title())的打印结果是Amanda Louis,赋值给name后,最后的打印 ...

你可以理解为,print函数完成了它的任务——打印出来,但是它的返回值是空,所以复制后在打印就是none
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-24 10:20:20 | 显示全部楼层
Hcl00 发表于 2020-9-24 10:15
再次打扰一下昨非大大,为什么print(name.title())的打印结果是Amanda Louis,赋值给name后,最后的打印 ...

看四楼例子
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-24 10:22:56 | 显示全部楼层
昨非 发表于 2020-9-24 10:07
执行上面两行代码,你会发现结果不仅有abc,还有none
abc就来自括号里print(a)被执行了,而print函数的( ...

我明白啦,谢谢您
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-24 10:24:46 | 显示全部楼层
Hcl00 发表于 2020-9-24 10:22
我明白啦,谢谢您

不客气,好好理解下
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-9-24 10:35:11 | 显示全部楼层
昨非 发表于 2020-9-24 10:19
你可以理解为,print函数完成了它的任务——打印出来,但是它的返回值是空,所以复制后在打印就是none

好,我会记住它的,谢谢大大
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-11 04:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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