Hcl00 发表于 2020-9-24 09:44:57

小白求助

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

为什么最后变量为空了{:10_245:}

昨非 发表于 2020-9-24 09:48:50

name = print(name.title())
你把这一步执行的print函数返回值赋值给了name,
它的返回值为None,覆盖掉原来的name
再次打印时当然为none了

Hcl00 发表于 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{:10_291:}

昨非 发表于 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)))

昨非 发表于 2020-9-24 10:07:48

执行上面两行代码,你会发现结果不仅有abc,还有none
abc就来自括号里print(a)被执行了,而print函数的(返回值)类型是none,所以type(print)的打印结果为空

Hcl00 发表于 2020-9-24 10:15:02

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

再次打扰一下昨非大大,为什么print(name.title())的打印结果是Amanda Louis,赋值给name后,最后的打印结果不是Amanda Louis啊,

昨非 发表于 2020-9-24 10:19:45

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

你可以理解为,print函数完成了它的任务——打印出来,但是它的返回值是空,所以复制后在打印就是none

昨非 发表于 2020-9-24 10:20:20

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

看四楼例子

Hcl00 发表于 2020-9-24 10:22:56

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

我明白啦,谢谢您

昨非 发表于 2020-9-24 10:24:46

Hcl00 发表于 2020-9-24 10:22
我明白啦,谢谢您

不客气,好好理解下

Hcl00 发表于 2020-9-24 10:35:11

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

好,我会记住它的,谢谢大大{:10_288:}
页: [1]
查看完整版本: 小白求助