Python 3 の raw_input

Hemank Mehtani 2023年10月10日
Python 3 の raw_input

raw_input() 関数は、ユーザーから 1 行を読み取ることができます。この関数は、末尾の改行を削除して文字列を返します。Python バージョン 3.0 以降では、名前が input() 関数に変更されました。

raw_inputinput の基本的な違いは、raw_input は常に文字列値を返すのに対し、input 関数は必ずしも文字列を返すとは限らないことです。ユーザーによる入力が数値の場合、それは整数。

場合によっては、ユーザーからの入力の取得中にいくつかの例外が発生することがあります。

try および except ステートメントは、Python のコード内でこれらの種類のエラーを処理するために使用されます。try ブロック内のコードブロックは、一部のコードのエラーをチェックするために使用されます。

例えば、

try:
    input = raw_input
except NameError:
    pass
print("Welcome to this " + input("Say something: "))

出力:

Say something: tutorial
Welcome to this tutorial

six は、Python 2 の任意のバージョンと Python 3 の任意のバージョンの違いをラップするためのシンプルなユーティリティを提供します。

これは、Python 2 と Python 3 の両方で変更なしで機能するコードをサポートすることを目的としています。

例えば、

from six.moves import input as raw_input

val1 = raw_input("Enter the name: ")
print(type(val1))
print(val1)

val2 = raw_input("Enter the number: ")
print(type(val2))
val2 = int(val2)
print(type(val2))
print(val2)

出力:

Enter the name: Hemank 
<class 'str'>
Hemank 
Enter the number: 17
<class 'str'>
<class 'int'>
17

コードの最初の行に six を実装する必要があることに注意してください。

関連記事 - Python Input