New submission from Terry J. Reedy <tjre...@udel.edu>:

In #44010, we are trying, as best as is possible with comprehensible REs, to 
identify in which circumstances occurrences of 'match', 'case' and '_' are 
keywords, and should be marked as such.  I was initially unsure and even wrong 
about '_'.

1. Capture Patterns: I was confused by 'And is instead...'.  'It is instead 
...', where 'it' refers to '_', is clearer to me.

2. Wildcard Patterns:  "'_' is a soft keyword" just says it sometimes is and 
sometimes is not, but not when, or rather, where.  After experiments like this 
(using the new IDLE 'copy with prompts' option ;-):

>>> _ = 'a'
>>> match [_, 'b']:
...     case [capture, _] if _ == 'a':
...         print(capture, _)
... 
a a

I added (in PR to come, with markup that might be improved)
"within any pattern, but only within patterns.  It is an identifier, as usual, 
even within ``match`` headers, ``guards``, and ``case blocks``.

Please consider also adding an example like the above.

----------
assignee: docs@python
components: Documentation
messages: 392848
nosy: brandtbucher, docs@python, gvanrossum, terry.reedy
priority: normal
severity: normal
stage: patch review
status: open
title: Match doc: Clarify '_' as a soft keyword
type: behavior
versions: Python 3.10, Python 3.11

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue44025>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to