Mit Python abflachen

Ich verstehe "Ertrag", aber ich habe verstanden, dass es ein Mechanismus ist, um zu untersuchen, woraus "Ertrag" besteht, und die Bewertung des Generators zu erhalten. Mit diesem Verständnis schrieb ich flach

def flatten(x):
    if hasattr(x, '__iter__') and not isinstance(x, str):
        for y in x:
            yield from flatten(y)
    else:
        yield x

Wenn Sie diesen "Ertrag" von "Ertrag" ändern, wird der Generator einfach zurückgegeben. Ich frage mich, ob Sie das verstehen.

In : ls = [1,2,3,[4,5],[6,[7,8,[9,10,11],12]]]

In : list(flatten(ls))
Out: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]

Ich bin mir nicht sicher, ob ich damit umgehen kann

Recommended Posts

Mit Python abflachen
Verwenden von Rstan aus Python mit PypeR
Python, Ausbeute, Rückkehr und manchmal Ausbeute von
Hinweise zur Verwendung von MeCab aus Python
Verwenden von Cloud-Speicher aus Python3 (Einführung)
Führen Sie Ansible über Python mithilfe der API aus
Vorsichtsmaßnahmen bei der Verwendung von Phantomjs aus Python
Greifen Sie mit OAuth 2.0 von Python aus auf Tabellenkalkulationen zu
Versuchen Sie es mit Amazon DynamoDB von Python
Von Python bis zur Verwendung von MeCab (und CaboCha)
Über die Python-Ausbeute
Starten Sie Python
SQL zu SQL
Ich habe versucht, die UnityCloudBuild-API von Python zu verwenden
MeCab von Python
Scraping mit Python
In Python reduzieren
In Python flach drücken
Ich möchte mit Python eine E-Mail von Google Mail senden.
Erstellen Sie mit python3 eine WAV-Datei aus dem GLSL-Shader
Führen Sie Python-Dateien mit Django aus HTML aus
Laden Sie Bilder von der URL mit Pillow in Python 3
Führen Sie Python-Skripte in Excel aus (mit xlwings).
Verwenden Sie thingspeak aus Python
Berühren Sie MySQL in Python 3
Bearbeiten Sie Redmine mit Python Redmine
Bedienen Sie Filemaker von Python aus
Verwenden Sie fließend Python
Fibonacci-Sequenz mit Python
Greifen Sie über Python auf Bitcoind zu
Änderungen von Python 3.0 zu Python 3.5
Änderungen von Python 2 zu Python 3.0
Python aus oder importieren
Verwenden Sie MySQL aus Python
Führen Sie Python aus Excel aus
Installieren Sie Python von der Quelle
Führen Sie Befehle aus Python aus
Datenbereinigung mit Python
Bedienen Sie Neutronen von Python!
Verwenden von Python # externen Paketen
WiringPi-SPI-Kommunikation mit Python
Verwenden Sie MySQL aus Python
Altersberechnung mit Python
Betreiben Sie LXC von Python aus
Manipuliere Riak aus Python
Erzwinge Python aus Fortran
Verwenden Sie BigQuery aus Python.
Suchen Sie Twitter mit Python
Namensidentifikation mit Python
Führen Sie den Befehl von Python aus
Hinweise zur Verwendung von Python-Unterprozessen
Versuchen Sie es mit Tweepy [Python2.7]
[Python] Von Stdin lesen
Verwenden Sie mecab-ipadic-neologd von Python
PUSH-Benachrichtigung von Python an Android mithilfe der Google-API
MessagePack-Aufruf von Ruby to Python-Methoden (oder Python to Ruby-Methoden) mithilfe von RPC
Installationsmethode bei Verwendung von RealSense aus Python (pyenv edition)
Implementieren eines Generators mit Python> Link> Yield und next ()> Yield
Kopieren Sie S3-Dateien mit GSUtil von Python nach GCS