raw_input()和input()区别及用法

python2.X运行liang的《python程序设计语言》中的例子程序ComputeAverageWithSimultaneousAssignment.pypython

# Prompt the user to enter three numbers
number1, number2, number3 = eval(input(
  "Enter three numbers separated by commas: "))

# Compute average
average = (number1 + number2 + number3) / 3

# Display result
print("The average of", number1, number2, number3,
    "is", average)

在eval函数执行过程当中也会抛出异常函数

python liang/ComputeAverageWithSimultaneousAssignment.py
Enter three numbers separated by commas: 1,2,3
Traceback (most recent call last):
  File "liang/ComputeAverageWithSimultaneousAssignment.py", line 3, in <module>
    "Enter three numbers separated by commas: "))
TypeError: eval() arg 1 must be a string or code object

而python3能够正确运行:设计

python3 liang/ComputeAverageWithSimultaneousAssignment.py
Enter three numbers separated by commas: 1,2,3
The average of 1 2 3 is 2.0

 在python2中code

eval(input(
  "Enter three numbers separated by commas: "))

须要改为three

input(
  "Enter three numbers separated by commas: ")
或
eval(raw_input(
  "Enter three numbers separated by commas: "))


Python 3中已经没有raw_input()函数,把原来在Python 2.x中的raw_input()函数重命名为了input()函数input

相关文章
相关标签/搜索