with statement star target
未关闭
还没有人认领这个 Issue。
docs
topic-parser
- 主要语言
- Python
- 星标
- 77.2k
- 派生
- 35.9k
- PR 合并指标
- PR 指标待抓取
描述
Documentation
https://docs.python.org/3/reference/simple_stmts.html#grammar-token-python-grammar-target
According to the docs, the grammar for the with statement allows:
with_stmt ::= "with" with_stmt_contents
with_stmt_contents ::= with_item
with_item ::= expression "as" target
target ::= identifier | "*" target
from my understanding that would allow a python syntax like this:
class Test:
def __enter__(self):
return (1, 2)
def __exit__(self, exc_type, exc_value, traceback):
pass
with Test() as *mambo:
print(mambo, type(mambo))
But for me with python version 3.12.8
I get a syntax error:
File "/home/gringo/accessia/main/controller_start/test.py", line 9
with Test() as *mambo:
^^^^^^
SyntaxError: starred assignment target must be in a list or tuple
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从所引用的 Python language-reference 中关于 with-statement 语法的章节开始,并在 Python 3.12.8 上复现该示例。将文档中描述的目标语法与报告的 SyntaxError 进行比较。当文档与观察到的行为得到协调,并且相关措辞或语法得到澄清时,即视为完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- python
- 领域
- documentation
- Issue 类型
- 文档
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 35/100