開發人員經常需要與用戶交互,以獲取數據或提供某種結果。如今,大多數程序都使用對話框來要求用戶提供某種類型的輸入。而Python為我們提供了兩個內置函數來讀取鍵盤輸入。
input()函數
Python input() 函數用於從用戶處獲取值。調用此函數是為了告訴程序停止並等待用戶輸入值。它是一個內置函數。 input()函數在Python 2.x和Python 3.x版本中均使用。在 Python 3.x 中,輸入函數顯式地將您提供的輸入轉換為字符串類型。但Python 2.x輸入函數按原樣接受您輸入的輸入的值和類型,而不修改類型。
Python3 中的示例程序
Python3
# Python program to demonstrate
# input() function in Python3.x
val1 = input("Enter the name: ")
# print the type of input value
print(type(val1))
print(val1)
val2 = input("Enter the number: ")
print(type(val2))
val2 = int(val2)
print(type(val2))
print(val2)
輸入輸出
這裏,值 “python3” 從用戶處獲取並將其存儲在 val1 變量中。僅對於 Python 3.x,輸入函數的存儲值類型始終為字符串。值 “1997” 從用戶處獲取並將其存儲在變量 val2 中。現在,變量 val2 的類型是字符串,我們必須使用 int() 函數將類型轉換為整數。 val2 變量將值 “1997” 存儲為整數類型。
Python2 中的示例程序
Python3
# Python program to demonstrate
# input() function in Python2.x
val1 = input("Enter the name: ")
print(type(val1))
print(val1)
val2 = input("Enter the number: ")
print(type(val2))
print(val2)
輸入輸出
這裏,值 “python3” 從用戶處獲取並將其存儲在 val1 變量中。該函數按原樣獲取您輸入的輸入的值和類型,而不修改類型。 val1中的值類型為字符串類型。值 “1997” 從用戶處獲取並將其存儲在變量 val2 中。現在,變量val2的類型是整數類型。我們不需要顯式更改變量類型。
raw_input()函數
Python raw_input 函數用於從用戶獲取值。我們調用此函數來告訴程序停止並等待用戶輸入值。它是一個內置函數。輸入函數是僅在 Python 2.x 中使用版本。 Python 2.x 有兩個函數來從用戶處獲取值。第一個是輸入函數,另一個是raw_input()函數。 raw_input() 函數與 Python 3.x 中的 input() 函數類似。建議開發者在Python 2.x中使用raw_input函數。因為有一個Python 2.x 版本中輸入函數的漏洞。
Python2 中的示例程序
Python3
# Python program to demonstrate
# input() function in Python2.x
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)
輸入輸出
這裏,值 “python3” 從用戶處獲取並將其存儲在 val1 變量中。對於raw_input 函數,存儲值的類型始終為字符串。值 “1997” 從用戶處獲取並將其存儲在變量 val2 中。現在,變量 val2 的類型是字符串,我們必須使用 int() 函數將類型轉換為整數。 val2 變量將值 “1997” 存儲為整數類型。
讓我們以表格形式看看差異:
input() | raw_input() | |
1. | input()函數接受用戶輸入。 | raw_input() 函數接受用戶的輸入。 |
2. |
它的語法是-: 輸入(提示) |
它的語法是-: raw_input(輸入) |
3. | 它隻需要一個提示參數。 | 它隻需要一個參數,即輸入。 |
4. | 它返回它所接受的輸入。 | 它的返回類型是字符串。 |
5. | 它通過刪除尾隨換行符將輸入轉換為字符串 | python 2.0版本才引入 |
6. | 阻塞直到收到輸入 | 掛起直到用戶輸入 |
7. | “hello world” | “hello world”但是字符串 |
8. | foo | 在snake_case |
相關用法
- Python input()用法及代碼示例
- Python input用法及代碼示例
- Python input方法用法及代碼示例
- Python int()用法及代碼示例
- Python integer轉roman用法及代碼示例
- Python integer轉string用法及代碼示例
- Python int轉exponential用法及代碼示例
- Python int.bit_length用法及代碼示例
- Python int.bit_count用法及代碼示例
- Python int.to_bytes用法及代碼示例
- Python int.from_bytes用法及代碼示例
- Python inspect.isawaitable用法及代碼示例
- Python inspect.isasyncgenfunction用法及代碼示例
- Python inspect.signature用法及代碼示例
- Python inspect.formatargspec用法及代碼示例
- Python inspect.getcallargs用法及代碼示例
- Python inspect.Signature.replace用法及代碼示例
- Python inspect.Signature.from_callable用法及代碼示例
- Python inspect.Parameter.replace用法及代碼示例
- Python inspect.Parameter.kind用法及代碼示例
- Python inspect.Parameter.kind.description用法及代碼示例
- Python inspect.BoundArguments.apply_defaults用法及代碼示例
- Python inspect.BoundArguments用法及代碼示例
- Python int構造函數用法及代碼示例
- Python id()用法及代碼示例
注:本文由純淨天空篩選整理自Santhosh220897大神的英文原創作品 Difference between input() and raw_input() functions in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。