raw_input과 input은 모두 python에 내장된 함수로, 콘솔에서 입력을 읽어 사용자와 상호작용합니다. 그러나 그 기능은 동일하지 않습니다. 다음은 사용법의 차이를 보여주는 두 가지 예입니다.
예제 1
Python 2.7.5 (default, Nov 18 2015, 16:26:36) [GCC 3.4.5 20051201 (Red Hat 3.4.5-2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> >>> raw_input_A = raw_input("raw_input: ") raw_input: PythonTab.com >>> print raw_input_A PythonTab.com >>> input_A = input("Input: ") Input: PythonTab.com Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<string>", line 1, in <module> NameError: name 'PythonTab' is not defined >>> >>> input_A = input("Input: ") Input: "PythonTab.com" >>> print input_A PythonTab.com >>>
예제 2
Python 2.7.5 (default, Nov 18 2015, 16:26:36) [GCC 3.4.5 20051201 (Red Hat 3.4.5-2)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> >>> raw_input_B = raw_input("raw_input: ") raw_input: 2015 >>> type(raw_input_B) <type 'str'> >>> input_B = input("input: ") input: 2015 >>> type(input_B) <type 'int'> >>>
예제 1 보시다시피 두 함수 모두 string을 받을 수 있지만 raw_input() 입력을 직접 읽습니다. 콘솔에서(모든 유형의 입력을 허용할 수 있음) input()의 경우, 유효한 Python 표현식을 읽을 수 있기를 바랍니다. 즉, 문자열을 입력할 때 따옴표를 사용하여 묶어야 합니다. 그렇지 않으면 SyntaxError가 발생합니다.
예 2 다음을 볼 수 있습니다. raw_input()은 모든 입력을 문자열로 처리하고 문자열 유형을 반환합니다. 그리고 input()은 순수 숫자 입력을 처리할 때 고유한 특성을 가지고 있으며, 예 1에서 볼 수 있듯이 입력된 숫자의 유형(int, float)을 동시에 반환합니다. 유효한 Python 표현식을 허용합니다. 예를 들어 input(1 + 3)은 int 유형의 4를 반환합니다.
python 매뉴얼을 보고 다음 내용을 알아보세요.
input([prompt])
eval(raw_input(prompt))와 동일
Input()은 기본적으로 raw_input()을 사용하여 구현됩니다. raw_input()을 호출한 후 eval() 함수를 호출하기 때문에 input()의 매개 변수로 표현식을 사용할 수도 있으며 표현식을 계산합니다. 수식의 값을 반환합니다.
그러나 내장 함수에는 다음과 같은 문장이 있습니다. 사용자의 일반적인 입력에는 raw_input() 함수 사용을 고려하십시오.
입력에 특별한 것이 없는 한( ) 필수입니다. 그렇지 않은 경우 일반적으로 사용자와 상호작용하기 위해 raw_input()을 사용하는 것이 좋습니다.
위 내용은 raw_input()과 input()의 차이점에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!