Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Howto - Python yield statement

Aperta
#1,081 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
25/100
Tipo di issue
Documentazione
Chiarezza
Da chiarire
Stato di attività
Ferma
Stack tecnologico
julia, python
Ambito
documentation

Direzione di ricerca

Iniziare con il metodo @pydef e il blocco py"""...""" nel report, quindi esaminare la posizione di pyeval.jl mostrata nel traceback. Determinare se questo esempio di yield può essere supportato o documentato, e rendere chiari il comportamento o l’utilizzo documentato.

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

Descrizione

Hi folks, not sure if this is the best place to get some advice, feel free to let me know if it's not.
I'm trying to implement a Python class which has one method that uses two yield statements. My current PyCall implementation is this, but it gives me a "SyntaxError: 'yield' outside function":

using PyCall

textual = pyimport("textual")
pyimport("textual.app")
pyimport("textual.widgets")


@pydef mutable struct StopwatchApp <: textual.app.App
    function compose(self)
        py"""
        yield textual.widgets.Header()
        yield textual.widgets.Footer()
        """
    end
end

The full error is this:

Traceback (most recent call last)
in <lambda>:1

/home/name/.julia/packages/PyCall/1gn3u/src/pyeval.jl:1
const Py_single_input = 256 # from Python.h

SyntaxError: 'yield' outside function

yield doesn't seem to be discussed in PyCall's docs so I'm wondering if there's an implementation for this. Please give me a shout if you can help me out :)

Lingua principale
Julia
Stelle
1.5k
Fork
186
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

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 JuliaPy/PyCall.jl

Tutte le issue di JuliaPy/PyCall.jl

Issue simili

Altre issue su Julia

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.