Python 3 中統一raw_input() 和input()
問題: raw🎜>
問題: raw_input(raw_input(什麼區別Python 中的) 和input() 3?
# In Python 2.x: >>> type(raw_input('What is your name? ')) <type 'str'> # In Python 3.x: >>> type(input('What is your name? ')) <type 'str'>
在 Python 3.x 之前,raw_input() 和 input() 有不同的用途。 raw_input() 以字串形式接收原始使用者輸入,而 input() 以 Python 程式碼形式評估輸入。
# Python 2.x # Get user input as a string using raw_input() name = raw_input('Enter your name: ') # Evaluate user input as Python code using input() age = input('Enter your age: ') # Returns an int
然而,在 Python 3.x 中,這種區別已被消除。原來的raw_input()被重新命名為input()。先前的 input() 已被刪除,儘管可以使用 eval(input()) 來複製它。
注意: 雖然 eval(input()) 可能會模擬先前的行為input(),在將使用者輸入評估為程式碼時務必小心謹慎。 Eval() 具有固有的安全風險,應謹慎使用。應盡可能優先考慮用於解析使用者輸入的更安全的替代方案。以上是Python 2 的 raw_input() 和 input() 之間有什麼區別以及它們在 Python 3 中如何統一?的詳細內容。更多資訊請關注PHP中文網其他相關文章!