Python 3 中统一 raw_input() 和 input()
问题: raw_input( 和 raw_input() 有什么区别Python 中的 ) 和 input() 3?
Python 答案:
# 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 中的说明:
# 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中文网其他相关文章!