24

raw_input("")Pythonコンソールで実行するために多くのことを試みましたが、エラーが発生します。さらに、古いpythonで作成された可能性のあるビデオをいくつか見ています。input("")唯一の方法であり、新しいバージョンで破棄されるのはなぜですかraw_input("")?

4

3 に答える 3

50

raw_input()input()Python v3.x でに名前が変更されました

古いinput()ものはなくなりましたが、それをエミュレートできますeval(input())

Python 3 の新機能では、これ (およびその他) について言及します。

PEP 3111 : raw_input() の名前がinput( ) に変更されました。つまり、 new input() 関数は sys.stdin から行を読み取り、末尾の改行を削除して返します。入力が途中で終了した場合、EOFError が発生します。input() の古い動作を取得するには、eval(input()) を使用します。

于 2012-06-04T17:35:50.797 に答える
5

Python3.xinput python2.xraw_inputです。古い2.xinputが設計により壊れたため、3.xで削除されたため、関数の名前が変更されました。

于 2012-06-04T17:37:19.263 に答える
0

これは、古い input() 関数が、入力した内容を Python コードであるかのように変換しようとするためです。多くのセキュリティ上の問題が発生します。それが主に、raw_input の代わりに破棄され、名前が input() に変更された理由です。これは、プログラマーが少し怠惰で、raw_input の代わりに input() を入力すると 4 文字少なくて済むためです。 ..

于 2018-07-22T07:13:26.927 に答える