argparse optionals with nargs='?', '*' or '+' can't be followed by positionals

Aperta
#53,584 27 commenti 3 reazioni 0 assegnatari Vedi su GitHub

@stephenfin ci sta già lavorando.

Dal 27/3/2026.

  • #146513 di @stephenfin — aperta

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
15/100
Tipo di issue
Bug
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
python
Ambito
cli

Direzione di ricerca

Start with the linked PR #146513 and the attached test_9338.py artifact, then review the other issue9338 patch files listed in the report. The work is done when argparse behavior for optional arguments using nargs='?', '*' or '+' followed by positionals is covered and the relevant tests pass.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

3.10 3.11 3.12 3.13 3.14 3.9 (EOL) stdlib type-bug
BPO 9338
Nosy @rhettinger, @jwilk, @merwok, @berkerpeksag, @kernc, @jacksonriley, @iritkatriel
Files
  • test_pos_after_var_args.patch
  • issue9338_argparse.patch
  • issue9338_3.patch
  • test_9338.py
  • issue9338_7.patch
  • Note: these values reflect the state of the issue at the time it was migrated and might not reflect the current state.

    Show more details

    GitHub fields:

    assignee = None
    closed_at = None
    created_at = <Date 2010-07-23.10:46:27.420>
    labels = ['type-bug', 'library', '3.9', '3.10', '3.11']
    title = "argparse optionals with nargs='?', '*' or '+' can't be followed by positionals"
    updated_at = <Date 2022-02-17.10:51:52.599>
    user = 'https://bugs.python.org/bethard'
    

    bugs.python.org fields:

    activity = <Date 2022-02-17.10:51:52.599>
    actor = 'wdoekes'
    assignee = 'none'
    closed = False
    closed_date = None
    closer = None
    components = ['Library (Lib)']
    creation = <Date 2010-07-23.10:46:27.420>
    creator = 'bethard'
    dependencies = []
    files = ['18328', '19691', '30296', '30297', '30350']
    hgrepos = []
    issue_num = 9338
    keywords = ['patch']
    message_count = 25.0
    messages = ['111270', '111280', '111282', '112511', '121013', '121720', '122016', '141639', '141660', '166237', '166239', '189198', '189200', '189470', '189472', '189867', '189868', '200858', '200862', '216990', '285866', '314213', '355748', '370265', '408332']
    nosy_count = 19.0
    nosy_names = ['rhettinger', 'bethard', 'wrobell', 'jwilk', 'eric.araujo', 'TD22057', 'wdoekes', 'catherine', 'elsdoerfer', 'Kotan', 'berker.peksag', 'paul.j3', 'phawkins', 'kernc', 'sebix', 'extmind', 'jacksonriley', 'iritkatriel', 'kottalovag']
    pr_nums = []
    priority = 'normal'
    resolution = None
    stage = 'patch review'
    status = 'open'
    superseder = None
    type = 'behavior'
    url = 'https://bugs.python.org/issue9338'
    versions = ['Python 3.9', 'Python 3.10', 'Python 3.11']
    

    Linked PRs
    • gh-146513
    Lingua principale
    Python
    Stelle
    77.2k
    Fork
    36k
    Merge medio
    1g 9h
    PR unite (30g)
    558

    Guida per i contributori

    Apri la guida per i contributori

    Come iniziare

    1. Leggi tutta la issue e poi la guida ai contributi del progetto.
    2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
    3. Fai un fork del repository e lavora su un branch.
    4. Apri una pull request che faccia riferimento al numero della issue.

    Altre issue di python/cpython

    Tutte le issue di python/cpython

    Issue simili

    Altre issue su Python

    Ricevi le nuove issue nella tua casella

    Un breve riepilogo di issue GitHub adatte ai principianti.