Es geht letztlich nicht um mutability sondern um hashability. Also mutable darf es schon sein, solange es auch hashable ist.
Mit selbst definierten Klassen kann man das durchaus machen. Es ist nach meiner Erfahrung aber nur selten sinnvoll.
Die Suche ergab 234 Treffer
- Donnerstag 27. Oktober 2022, 18:04
- Forum: Allgemeine Fragen
- Thema: liste als key in dictionary
- Antworten: 28
- Zugriffe: 1121
- Montag 25. Juli 2022, 09:08
- Forum: Allgemeine Fragen
- Thema: Klausurvorbereitung Python verstehen
- Antworten: 10
- Zugriffe: 734
Re: Klausurvorbereitung Python verstehen
51 (ohne Zeilenendezeichen):
Code: Alles auswählen
for n in 1,2,3:print(n,"is",["even;","odd;"][n%2])
- Donnerstag 14. Juli 2022, 23:09
- Forum: Allgemeine Fragen
- Thema: if letzte dataframe Werte > x, dann True?
- Antworten: 3
- Zugriffe: 466
Re: if letzte dataframe Werte > x, dann True?
Etwas kürzer (und m.E. einfacher zu verstehen):
Code: Alles auswählen
(df["wert"].tail(THRESHOLD) > 3.7).all()
- Donnerstag 23. Juni 2022, 07:31
- Forum: Allgemeine Fragen
- Thema: Rekursive Funktion
- Antworten: 29
- Zugriffe: 2006
Re: Rekursive Funktion
Um noch ein bisschen konstruktiv zu sein, noch ein kleiner Hinweis. Die Funktion ist recht einfach zu schreiben. Man muss "einfach nur" abarbeiten, was alles an Aufgaben zu tun ist: 1. Funktionskopf (1 Zeile) 2. Rekursionsende erkennen und behandeln (2 Zeilen) 3. "Plus" erkennen ...
- Mittwoch 22. Juni 2022, 19:03
- Forum: Allgemeine Fragen
- Thema: Rekursive Funktion
- Antworten: 29
- Zugriffe: 2006
Re: Rekursive Funktion
@bords0: Doch, der einzige Teilausdruck der bis zu der Stelle kommt ist "5+3". Wenn ein "*" drin vorkommt, wird das im ``if`` davor abgefrühstückt, das heisst wenn ein "+" drin ist, dann ist garantiert an Index 1 ein "+" das auch von `index()` als erstes gefu...
- Mittwoch 22. Juni 2022, 18:03
- Forum: Allgemeine Fragen
- Thema: Rekursive Funktion
- Antworten: 29
- Zugriffe: 2006
Re: Rekursive Funktion
Nicht ganz, bei calculate("2*5+3") ist das z.B. nicht so.__blackjack__ hat geschrieben: ↑Mittwoch 22. Juni 2022, 17:09 Bei "+" ist der `index()`-Aufruf überflüssig, die `position` ist da immer 1 bei den gegebenen Randbedingungen.
Trotzdem ist die Funktion falsch, calculate("2*5*3") gibt 10 aus ...
- Mittwoch 22. Juni 2022, 11:17
- Forum: Allgemeine Fragen
- Thema: Neulingsfrage: Variablen bei Script-Aufruf übergeben
- Antworten: 25
- Zugriffe: 1379
- Freitag 17. Juni 2022, 10:28
- Forum: Allgemeine Fragen
- Thema: iterationschritte einer liste
- Antworten: 9
- Zugriffe: 441
Re: iterationschritte einer liste
wie kommt man darauf dass die iteration von 1-14 als die äußere schleife gilt ? müsste sie nicht die innere schleife sein ? Weil es die äußere der beiden list comprehensions ist. Nicht verwechseln mit einer list comprehension mit zwei for-Schleifen drin, das ist etwas anderers. Oder vielleicht muss...
- Freitag 17. Juni 2022, 09:56
- Forum: Allgemeine Fragen
- Thema: iterationschritte einer liste
- Antworten: 9
- Zugriffe: 441
Re: iterationschritte einer liste
Um das zu verstehen, hilft dir vielleicht, die list comprehensions (eine oder beide) auflösen. Ich löse mal die äußere auf:
Code: Alles auswählen
attributes_by_class = []
for i in range(1, 14):
attributes_by_class.append(
[data[:, i][data[:, 0] == c] for c in (1, 2, 3)]
)
- Freitag 11. März 2022, 01:09
- Forum: Allgemeine Fragen
- Thema: die Werte aus dem Klammern auslesen
- Antworten: 12
- Zugriffe: 527
Re: die Werte aus dem Klammern auslesen
Ich rate mal, dass alles was vor der Klammer ist mit jedem Teil innerhalb der Klammer komibiniert werden soll. Die Teile innerhalb sind durch Strichpunkte getrennt. Leerzeichen und ähnliches soll dabei ignoriert werden. Dann kann man den gesamten String an den schließenden Klammer in "Zeilen&qu...
- Sonntag 13. Februar 2022, 15:59
- Forum: Showcase
- Thema: Quersumme Performance
- Antworten: 4
- Zugriffe: 4679
Re: Quersumme Performance
Wenn man 10.000 mal die Quersumme der gleichen Zahl berechnet, ist das immer schnell, wenn man einen cache benutzt. Egal bei welcher der Funktionen. Es wird immer nur das erste Mal gerechnet, dann nicht mehr. Wenn man jedesmal mit einer anderen zufälligen Zahl rechnet, ändert sich das. (Zusätzlich f...
- Donnerstag 29. Juli 2021, 08:12
- Forum: Allgemeine Fragen
- Thema: Programm ist viel zu langsam
- Antworten: 26
- Zugriffe: 2237
- Sonntag 25. Juli 2021, 20:28
- Forum: Allgemeine Fragen
- Thema: Programm ist viel zu langsam
- Antworten: 26
- Zugriffe: 2237
Re: Programm ist viel zu langsam
__blackjack__s Programm zeigt alle Wörter an, die alle vorgegebenen Buchstaben enthalten. Wenn man statt needle alle "Teilmengen" von needle ausprobiert, kann man alle Wörter finden, die man legen kann. Dazu muss man die vorletzte Zeile von main() ersetzen durch etwas deutlich längeres (wa...
- Sonntag 25. Juli 2021, 13:52
- Forum: Wissenschaftliches Rechnen
- Thema: numpy und Teilen durch Null
- Antworten: 3
- Zugriffe: 10723
Re: numpy und Teilen durch Null
Manche dieser Vektoren haben als letzte Stelle immer 0 (alles andere ergibt inhaltlich keinen Sinn) Ich bin mir nicht sicher ob ich dich richtig verstehe. Wenn die letzte Zahl immer eine '0' ist, warum sollte sie dann überhaupt dort "mitgeschleppt" werden? Kann es sein, dass das irgend ei...
- Sonntag 25. Juli 2021, 11:33
- Forum: Wissenschaftliches Rechnen
- Thema: numpy und Teilen durch Null
- Antworten: 3
- Zugriffe: 10723
numpy und Teilen durch Null
Ich habe eine Menge von eindimensionalen arrays (Vektoren), die alle die Länge n + 1 haben. Könnte so etwas sein wie "zurückgelegter Weg", "Entfernung vom Endpunkt", "Zeit übrig", usw. Die Länge ergibt sich aus der Erzeugung, der Speicherung und der Weiterverarbeitung d...
- Sonntag 25. Juli 2021, 09:57
- Forum: Allgemeine Fragen
- Thema: Kopieren von Skalaren vs. Kopieren von Listen
- Antworten: 4
- Zugriffe: 1174
Re: Kopieren von Skalaren vs. Kopieren von Listen
Ich empfehle hierzu auch den python visualizer: http://pythontutor.com/visualize.html#mode=edit
Damit kann man alle diese Effekte visualisieren und weitere Fragen durch Herumspielen beantworten. Ich habe bei etlichen Leuten festgestellt, dass dadurch die Erleuchtung kam.
Damit kann man alle diese Effekte visualisieren und weitere Fragen durch Herumspielen beantworten. Ich habe bei etlichen Leuten festgestellt, dass dadurch die Erleuchtung kam.
- Samstag 5. Juni 2021, 13:16
- Forum: Allgemeine Fragen
- Thema: Python mit Spider
- Antworten: 3
- Zugriffe: 513
Re: Python mit Spider
Ich vermute, dass du die Code-Vervollständigung meinst. Unter
Werkzeuge -> Einstellungen -> Vervollständigung und Lint -> Allgemein
gibt es jede Menge Häkchen, die man entfernen kann. Das müsste weitgehend helfen.
Werkzeuge -> Einstellungen -> Vervollständigung und Lint -> Allgemein
gibt es jede Menge Häkchen, die man entfernen kann. Das müsste weitgehend helfen.
- Donnerstag 8. April 2021, 11:41
- Forum: Allgemeine Fragen
- Thema: Typescript / Javascript -> Python
- Antworten: 13
- Zugriffe: 1786
Re: Typescript / Javascript -> Python
Es gibt kein "privat" unter Python. Doppelte Unterstriche haben in seltenen Fällen (Mehrfachvererbung) ihre Berechtigung. Ich dachte immer, das wäre, um Namenskollisionen mit Unterklassen zu verhindern (evtl. auch versehentliche solche Kollisionen). Dass das bei Mehrfachvererbung auch ver...
- Samstag 3. April 2021, 10:01
- Forum: Allgemeine Fragen
- Thema: Etwas erneut ausführen oder zurückspringen
- Antworten: 19
- Zugriffe: 2279
Re: Etwas erneut ausführen oder zurückspringen
was daran IMHO auch ziemlich schräg / verwirrend ist, ist das `print` zwar in den Annotations auftaucht, aber der Name `print` immer noch an die Funktion gebunden ist und nicht an den String: Warum empfindest du das als schräg / verwirrend? Namen werden doch nie an die annotation gebunden, oder ste...
- Sonntag 28. März 2021, 17:43
- Forum: Allgemeine Fragen
- Thema: Etwas erneut ausführen oder zurückspringen
- Antworten: 19
- Zugriffe: 2279
Re: Etwas erneut ausführen oder zurückspringen
Welche (ziemlich alte) Version von Python benutzt du?noisefloor hat geschrieben: ↑Sonntag 28. März 2021, 12:24 Hallo,
was Type Annotations sind weiß ich schon - nur ist `print: """hier steht text"""` auch mit Type Annotations kein valides Python.
Gruß, noisefloor