0

我正在尝试清除 Python 中的代码行,并在任何方式清除 Python 的 IDLE 窗口?但是,当我在 IDLE 3.3 中运行下面的函数时,我得到了下面的错误。然而,它在 2.7.3 版本中工作。

错误

Traceback (most recent call last):
  File "<pyshell#7>", line 1, in <module>
    cls()
  File "<pyshell#6>", line 2, in cls
    print('\n') * 100
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'

代码

def cls():
    print('\n') * 100
4

1 回答 1

6

你大概是说

print('\n' * 100)

当你将一个字符串乘以一个 int 时,它会重复:

>>> 'ha' * 3
'hahaha'

但是你所做的是将print('\n')by的值相乘100。但print()不返回任何东西(阅读:返回None),因此错误:你不能乘以Noneand int

在 Python 2 中没有区别,因为没有括号:

print '\n' * 100

尽管如此,Python 对它的解释方式与 Python 3 中的方式相同(与您似乎解释它的方式不同)。

于 2012-12-06T19:08:38.597 回答