为什么“ str(print(“ hello”)+“ one”)“在python中打印” hello noneone“?

时间:2019-05-10 05:39:09

标签: python-3.x

我希望它会打印“ helloone”,因为当我编写“ str(print())+“ one””时,输出为“ Noneone”,因为“ print()”为None。因此,如果我输入“ str( print(“ hello”))+“ one”“,那么它将添加” hello“和” one“并应打印” helloone“,但输出为” hello noneone“。

2 个答案:

答案 0 :(得分:0)

当您像这样打印“ hello”时

    print("hello")

它正在打印文本你好,命令完成。因此它将返回一个的NoneType值。然后,此值将被转换为字符串并变为“无”,然后将其添加到“一”中,从而为您提供“无”

答案 1 :(得分:0)

之所以给出此输出,是因为它打印问候,然后打印返回None,然后再次显示(在REPL中)。打印不会返回打印的内容,而是返回None