python – Auf der Suche nach einer Methode in def, die den fortlaufenden Effekt des Aufrufs dieser def erreichen kann, um bestimmte Bedingungen zu erfüllen (der Titel ist nicht klar, siehe Beschreibung in der Frage)
过去多啦不再A梦
过去多啦不再A梦 2017-05-27 17:39:54
0
2
682
def con(x): if x==3: continue #会报错 def con2(x): if x == 4: continue #会报错 for i in range(0,10): con(i) con2(i) print(i)

Was ich meine ist, dass, wenn die Bedingungen in def erfüllt sind, die extern aufgerufene Schleife fortgesetzt wird. Wenn im Beispiel der Wert von i beispielsweise 3 oder 4 ist, fahren Sie fort. Da viele Def-Methoden aufgerufen werden und das tatsächliche Szenario viel komplizierter ist als das Beispiel, scheint es nicht sehr prägnant zu sein, den Rückgabewert einzeln zu beurteilen. Ich möchte Sie fragen, ob es eine Möglichkeit gibt, mein Anliegen zu verwirklichen. Vielen Dank~

过去多啦不再A梦
过去多啦不再A梦

Antworte allen (2)
小葫芦

可以通过抛个特定异常的方式来影响 for 循环:

class Abort(Exception): pass def con(x): if x==3: raise Abort() def con2(x): if x == 4: raise Abort() for i in range(0,10): try: con(i) con2(i) except Abort: continue print(i)
    漂亮男人

    continue必须搭配for一起使用,可以尝试换一种实现思路
    如:

    def con(x): return True if x == 3 else False def con2(x): return True if x == 4 else False for i in range(0,10): lst = [ con(i), con2(i) ] if any(lst): continue print(i)
      Neueste Downloads
      Mehr>
      Web-Effekte
      Quellcode der Website
      Website-Materialien
      Frontend-Vorlage
      Über uns Haftungsausschluss Sitemap
      Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!