Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonでキーボード入力を読み取る方法:raw_inputとinput関数の違いを解説

Pythonには、標準入力(デフォルトではキーボード)から1行分のテキストを読み取るための組み込み関数が2つ用意されています。これらの関数は次の通りです。

  • raw_input
  • input

raw_input関数とは

raw_input([prompt]) 関数は、標準入力から1行を読み取り、末尾の改行コードを取り除いた上で、その内容を文字列として返します。

#!/usr/bin/python
str = raw_input("Enter your input: ")
print "Received input is : ", str

このプログラムを実行すると、任意の文字列の入力を促すプロンプトが表示され、入力された内容がそのまま画面に出力されます。たとえば「Hello Python!」と入力した場合の出力は次のようになります。

Enter your input: Hello Python
Received input is : Hello Python

input関数とは

input([prompt]) 関数も基本的には raw_input と同様に標準入力から1行を読み取りますが、決定的な違いが1点あります。それは、入力された内容を有効なPythonの式として評価し、その評価結果を返すという点です。

#!/usr/bin/python
str = input("Enter your input: ")
print "Received input is : ", str

このため、リスト内包表記のようなPython式を入力すると、文字列ではなく評価後の結果が得られます。

Enter your input: [x*5 for x in range(2,10,2)]
Received input is : [10, 20, 30, 40]

補足:Python 3での扱いに注意

なお、上記の挙動はPython 2特有のものです。Python 3では raw_input() は廃止され、input() が常に文字列として入力を受け取るように変更されました。Python 3で入力を式として評価したい場合は eval(input()) を使う方法がありますが、任意のコード実行につながるセキュリティリスクがあるため、利用は慎重に行う必要があります。

  1. Pythonで画像を読み込む方法:OpenCVとPILを使った基本操作を解説

    OpenCVによる画像処理OpenCV(Open Source Computer Vision)は、機械学習とコンピュータビジョンのために開発されたオープンソースのプログラミングライブラリです。コンピュータビジョンアプリケーション開発のための共通基盤を提供し、商用製品への機械学習の導入を迅速化します。OpenCVには、2,500以上の最適化されたアルゴリズムが含まれており、古典的な手法から最先端の手法まで、コンピュータビジョンと機械学習の両分野をカバーしています。これらの豊富なアルゴリズムにより、顔検出・認識、物体识别、動画内の人間の動作の分類、カメラの動きの追跡、複数画像の結合による高解像度

  2. 【2024年最新】Windows 10でキーボードの入力が遅い・ラグが発生する原因と9つの対処法

    Windows 10はPC向けOSとして非常に優れていますが、キーボードの入力ラグやキーの固まりといった技術的な問題が発生することがあります。キーボードで文字を入力しても、画面に表示されるまで時間がかかる——こんな経験はありませんか?学校の課題を書いている最中や、重要な仕事のメールを作成しているときに入力ラグが発生すると、とてもストレスを感じますよね。 ご安心ください。この記事では、キーボード入力ラグの主な原因と、Windows 10で入力遅延を解消するための具体的な方法をわかりやすく解説します。 Windows 10でキーボード入力ラグが発生する原因 Windows 10でキーボードの反応