ホームページ > バックエンド開発 > Python チュートリアル > Python 2 の「raw_input()」と「input()」の違いは何ですか?また、Python 3 ではどのように統合されていますか?

Python 2 の「raw_input()」と「input()」の違いは何ですか?また、Python 3 ではどのように統合されていますか?

Barbara Streisand
リリース: 2024-12-16 00:23:11
オリジナル
453 人が閲覧しました

What's the Difference Between Python 2's `raw_input()` and `input()` and How Are They Unified in Python 3?

Python 3 での raw_input() と input() の統合

質問: raw_input() の違いは何ですか? ) と Python の input() 3?

Python での答え:

# In Python 2.x:
>>> type(raw_input('What is your name? '))
<type 'str'>

# In Python 3.x:
>>> type(input('What is your name? '))
<type 'str'>
ログイン後にコピー

Python 3.x より前では、raw_input() と input() は別の目的を果たしていました。 raw_input() は生のユーザー入力を文字列として受け取りましたが、input() は入力を Python コードとして評価しました。

Python 2.x での説明:

# Python 2.x
# Get user input as a string using raw_input()
name = raw_input('Enter your name: ')

# Evaluate user input as Python code using input()
age = input('Enter your age: ')  # Returns an int
ログイン後にコピー

ただし、Python 3.x では、この区別はなくなりました。元の raw_input() は input() に名前変更されました。以前の input() は削除されましたが、eval(input()) を使用して複製できます。

注意: 一方、eval(input()) は以前の動作をシミュレートする可能性があります。 input() を使用する場合、ユーザー入力をコードとして評価する場合は注意が必要です。 Eval() には固有のセキュリティ リスクがあるため、慎重に使用する必要があります。可能な限り、ユーザー入力を解析するためのより安全な代替手段を優先する必要があります。

以上がPython 2 の「raw_input()」と「input()」の違いは何ですか?また、Python 3 ではどのように統合されていますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート