Ich bin mir nicht sicher, ob der Titel ausdrücken kann, was ich richtig machen möchte, aber der Punkt ist, dass ich manchmal so etwas machen möchte. Besonders nach dem Schreiben von JS. ..
d = dict(a=1, b=2)
#Wird normalerweise so verwendet
d["c"] = d["a"] + d["b"]
#Ich mag dieses Gefühl
d.c = d.a + d.b
Sie können das Wörterbuch ein wenig erweitern und __setattr__
__setitem__
zuordnen (auch bekommen). Glücklich!
Wenn Sie ein Attribut werden, funktioniert die Vervollständigung in IPython. Wenn Sie beispielsweise das Anforderungsmodul verwenden und sagen "Ich möchte den Inhalt des aktuellen Antwortheaders sehen!", Werden die Kandidaten in einer Reihe nur durch Registerkarten angezeigt.
import requests
from sklearn.datasets.base import Bunch as dict
#Versuchen Sie, die GitHub-API zu verwenden
response = requests.get("https://api.github.com")
headers = dict(**response.headers)
Wenn Sie in diesem Zustand header. <TAB>
ausführen ...
Aus diesem Grund kann die Anzahl der Striche erheblich reduziert werden, verglichen mit dem aufeinanderfolgenden Schlagen von "Headern [" X-RateLimit-Remaining "]" usw. Beeindruckend! !! von··
Oh ... oh ...
Recommended Posts