如何警告潜在的NameError?

emi*_*ess 1 python nameerror

这是一个Python脚本的示例:

n, dollar, euro = map(input().split())
if n == 1:
   print(dolar / euro)  # Note the typo, 'dolar' vs. 'dollar'
else:
   print(euro / dollar)
Run Code Online (Sandbox Code Playgroud)

我犯了一个错误("dolar"与一个'l').error(NameError)除非您输入,否则口译员不会通知甚至是警告n = 1.

如何在运行时通知它?

Woo*_*ble 7

pylint会将此报告为E: 3: Undefined variable 'dolar',并为您提供大量有用的样式提示.

Python本身不能使这样的编译时错误,因为它不能真正告诉你没有运行导致它的代码动态创建该名称.(即使你碰巧这样做,Pylint也会认为这是一个错误,这很好,因为如果你编写类似的代码,你应该让它得分很差...)