Skip to main content
 首页 » 编程设计

python之如何警告我潜在的 NameError

2025年05月04日10yyy_WW

这是一个 Python 脚本示例:

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

我犯了一个错误(“dolar”有一个“l”)。除非您输入 n = 1,否则解释器不会通知 error(NameError) 甚至警告。

如何在运行时通知我?

请您参考如下方法:

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

Python 本身不会产生像这样的编译时错误,因为它无法真正判断您在不运行导致它的代码的情况下没有动态创建该名称。 (即使您碰巧这样做,Pylint 也会认为这是一个错误,这很好,因为如果您编写这样的代码,您应该得到很差的分数...)