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

相關文章
相關標籤/搜索