ホームページ > バックエンド開発 > Python チュートリアル > Python 3 でユーザーからの数値入力を安全に読み取るにはどうすればよいですか?

Python 3 でユーザーからの数値入力を安全に読み取るにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-29 20:23:17
オリジナル
185 人が閲覧しました

How Can I Safely Read Numerical Input from Users in Python 3?

ユーザー入力を数値として読み取る際の問題

Python 3 では、input() 関数を使用してユーザー入力を読み取ると、型に関する懸念が生じます受信したデータの数。デフォルトでは、ユーザーが数値データを入力するつもりであっても、input() は値を文字列として返します。この動作は、input() がユーザー入力を整数として扱う Python 2.7 とは異なります。

コード スニペット内:

x = input("Enter a number: ")
y = input("Enter a number: ")
ログイン後にコピー

変数 x と y は、整数ではなく文字列になります。これは、x と y で算術演算を実行するときに明らかになります。

解決策

入力を数値として読み取るには、int() または float を使用して明示的に変換する必要があります。 () 関数。例:

x = int(input("Enter a number: "))
y = int(input("Enter a number: "))
ログイン後にコピー

int() 関数は入力を整数に変換し、float() 関数は入力を浮動小数点数に変換します。

異なる処理数値入力の基数

異なる基数で入力された数値入力を処理することもできます。 Python 3 では、int() 関数または float() 関数の 2 番目のパラメーターを使用して基数を指定する便利な方法が提供されています。例:

data = int(input("Enter a number: "), 8)  # Binary base
data = int(input("Enter a number: "), 16)  # Hexadecimal base
data = int(input("Enter a number: "), 2)  # Octal base
ログイン後にコピー

Python 2 と 3 の違い

Python 2 と 3 は、ユーザー入力の読み取りに関して異なる動作をします。

  • Python 2.x:

    • input() 関数はユーザー入力を評価し、結果を整数として返します。
    • raw_input() 関数は、次の input() に似ています。 Python 3 では評価せずに文字列を返します。
  • Python 3.x:

    • input() 関数は、次の場合でもユーザー入力を文字列として返します。目的は数値データを入力することです。
    • raw_input() 関数は Python では使用できません。 3.

これらの違いを理解し、適切な型変換メソッドを使用することで、Python 3 で数値入力を効果的に読み取ることができます。

以上がPython 3 でユーザーからの数値入力を安全に読み取るにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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