我正在为 Ansys Mechanical 编写脚本,这些脚本是用 IronPython 2.7.0.40 编写的。在我的脚本中,我需要为 ContactTimeStepControls.None 分配一个属性。请注意,这里的 None 不是 None
我正在为 Ansys Mechanical 编写脚本,这些脚本是用 IronPython 2.7.0.40 编写的。在我的脚本中,我需要为 分配一个属性 ContactTimeStepControls.None
。请注意, None
这里的 不是 None
对象。[1]
我的问题是 VS Code 中的 Pylint 扩展将 None
此处的使用标记为语法错误(可能是因为它认为它是对象 None
)并拒绝评估其余代码。以下是它给出的错误消息:
SyntaxError:语法无效(file:///[PathToMyScript],第 264 行)编译 [Ln 264,Col 80]
解析失败:'无效语法(,第 264 行)'Pylint(E0001:语法错误)[Ln 264,Col 81]
我尝试通过以下两种方式禁用该错误消息:
# pylint: disable=syntax-error
Cxn.TimeStepControls = ContactTimeStepControls.None
和
# pylint: disable=E0001
Cxn.TimeStepControls = ContactTimeStepControls.None
两者都无法抑制错误。
以下是一个屏幕截图:
因此我有三个问题:
-
我对 Pylint 的抑制是不是出了什么问题?
-
是否有某种方法可以构造代码以避免错误(请注意,我无法更改的成员
ContactTimeStepControls
)?
-
还有其他方法可以抑制此行上的 Pylint 错误吗?
[1] 输出如下 dir(ContactTimeStepControls)
(参见 粗体 部分):
['AutomaticBisection', 'CompareTo', 'Equals', 'Format', 'GetHashCode', 'GetName', 'GetNames', 'GetType', 'GetTypeCode', 'GetUnderlyingType', 'GetValues', 'HasFlag', 'IsDefined', 'MemberwiseClone',
'没有任何' , 'Parse', 'PredictForImpact', 'ReferenceEquals', 'ToBoolean', 'ToByte', 'ToChar', 'ToDateTime', 'ToDecimal', 'ToDouble', 'ToInt16', 'ToInt32', 'ToInt64', 'ToObject', 'ToSByte', 'ToSingle', 'ToString', 'ToType', 'ToUInt16', 'ToUInt32', 'ToUInt64', 'TryParse', 'UseImpactConstraints', '__and__', '__class__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__invert__', '__le__', '__lt__', '__ne__', '__new__', '__nonzero__', '__or__', '__rand__', '__reduce__', '__reduce_ex__', '__repr__', '__ror__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__xor__', 'value__']
编辑:
我刚刚发现了另一个可能发生这种情况的地方,人们可能更常遇到这种情况。Microsoft DialogResult
.NET API 模块 属性 ( link System.Windows.Forms
) None
属性,它会产生相同的效果。
尽管有“禁用”注释,但 Pylint 语法错误仍未得到抑制
下载声明:
本站所有软件和资料均为软件作者提供或网友推荐发布而来,仅供学习和研究使用,不得用于任何商业用途。如本站不慎侵犯你的版权请联系我,我将及时处理,并撤下相关内容!