为什么print(())和input(())打印括号?

时间:2017-10-13 15:05:33

标签: python python-3.x io output

我正在玩input(())并注意到它打印了一对parens作为提示。我认为这是因为它提出了一些提示作为参数。但是,如果我想让它们成为提示,我必须在引号中添加其他内容。

然后我尝试了print(())并得到了相同的行为(因此我假设输入只是将其arg传递给print)。为什么括号特别之处在于它们不需要引号?

1 个答案:

答案 0 :(得分:3)

()是一个空元组:

>>> t = ()
>>> t
()
>>> type(t)
<class 'tuple'>
>>> print(t)
()

input()print()在打印之前将其参数转换为字符串。这里的元组没有什么特别之处,你可以对其他对象做同样的事情:

>>> print({'a', 'set', 'object'})
{'object', 'a', 'set'}
>>> input({'a', 'set', 'object'})
{'object', 'a', 'set'}