VS Code中[大写字母]_[大写字母]格式变量语法高亮异常问题
问题描述
以下是相关Python代码:
import numpy as np import matplotlib.pyplot as plt # INITIAL CONDITIONS m = 550E03 # kg r = 3.7 / 2 # m l = 70 # m I = m * ( (r ** 2) / 4 + (l ** 2) / 12 ) # kg * m^2 position = [0, 0] # m velocity = [0, 0] # m/s acceleration = [0, 0] # m/s^2 theta = np.pi / 2 # rad F_g = [0, -53.935E06] # N F_R = [80.905E06 * np.cos(theta), 80.905E06 * np.sin(theta)] # N
在VS Code中,所有命名格式为**[大写字母]_[大写字母]**的变量(如上述代码中的F_R)会出现颜色随意变化的情况,且该现象不受VS Code颜色主题影响。
问题原因
VS Code默认的Python语法高亮插件Pylance,会将XX_XX格式的标识符误识别为C/C++风格的宏定义/预处理器指令,从而套用了错误的高亮规则,导致变量颜色异常。
解决方法
- 修改变量命名风格
将这类变量改为Python官方推荐的蛇形命名法(小写字母加下划线,如f_r),既符合PEP8编码规范,也能从根源上避免语法高亮的误判。 - 配置Pylance插件禁用宏识别
- 打开VS Code设置界面(快捷键
Ctrl+,) - 搜索
Pylance: Diagnostics,找到Define Constant Detection选项,将其设置为false - 或者直接在
settings.json中添加以下配置:"python.analysis.defineConstantDetection": false
- 打开VS Code设置界面(快捷键
内容的提问来源于stack exchange,提问作者Jacob Ivanov
相关产品推荐
相关产品推荐

