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')しかし、あなたがすることは、の値に。を掛けることです100。しかし、print()何も返さない(読み取り:returns ) 、Noneしたがってエラー:乗算することはできません。Noneint

Python 2では、括弧がないため、違いはありません。

print '\n' * 100

それでも、PythonはPython 3と同じように解釈します(そして、あなたがそれを解釈しているように見えるのと同じ方法ではありません)。

于 2012-12-06T19:08:38.597 に答える