[New-bugs-announce] [issue35430] Lib/argparse.py uses `is` for string comparison
Roman Yurchak
report at bugs.python.org
Thu Dec 6 15:27:58 EST 2018
New submission from Roman Yurchak <rth.yurchak at pm.me>:
Lib/argparse.py uses `is` for string comparison,
`
221: if self.heading is not SUPPRESS and self.heading is not None:
247: if text is not SUPPRESS and text is not None:
251: if usage is not SUPPRESS:
256: if action.help is not SUPPRESS:
290: if part and part is not SUPPRESS])
679: if action.default is not SUPPRESS:
1130: if self.dest is not SUPPRESS:
1766: if action.dest is not SUPPRESS:
1768: if action.default is not SUPPRESS:
1851: if argument_values is not SUPPRESS:
2026: if action.help is not SUPPRESS]
`
where `SUPPRESS = '==SUPPRESS=='`. Unless I'm missing something this can produce false negatives if the variable that we compare against is a slice from another string. Using equality is probably safer in any case.
Detected with LGTM.com analysis.
----------
components: Library (Lib)
messages: 331246
nosy: rth
priority: normal
severity: normal
status: open
title: Lib/argparse.py uses `is` for string comparison
versions: Python 3.8
_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue35430>
_______________________________________
More information about the New-bugs-announce
mailing list