Ubuntu 系統同時安裝 Python 2.7 和 3.4,PyCharm 配置為 Python 2.7,但代碼提示 Unresolved reference 'raw_input',改用 input() 卻無法運行。
raw_input() 返回字符串,input() 等同於 eval(raw_input())(有安全風險)raw_input() 被重命名為 input(),舊 input() 被移除PyCharm 的代碼檢查器可能默認按 Python 3 語法檢查,導致誤報。
# 在代碼開頭添加 shebang(Linux/Mac)
#!/usr/bin/env python2.7
# 或在 PyCharm 中:File → Settings → Project → Python Interpreter
# 確保選擇的是 Python 2.7 解釋器
import sys
if sys.version_info[0] < 3:
input_func = raw_input
else:
input_func = input
name = input_func("請輸入姓名: ")
print(name)
from six.moves import input
name = input("請輸入: ")
print name 是 Python 2 語法,Python 3 需 print(name)