realpython / realpython/python-guide

Add new gotcha

Offen
#1,158 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
Batchfile
Sterne
29.8k
Forks
5.9k
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

Hi,

While running tests on my code I was doing something like:

class Data:
    mylist = [1,2,3,4]


def test_function():
    local_list = Data.mylist
    local_list+=new_list

    # Do stuff with 

and there are multiple tests using mylist. This is going to modify the list instead of creating a new one, an unexpected behavior of +=. This will let one test talk to the tests happening later. The safer approach is:

class Data:
    mylist = [1,2,3,4]


def test_function():
    local_list =new_list + Data.mylist

    # Do stuff with 

here + will copy the list. Could you please add this case?

Cheers.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

In der Issue wird keine Datei, kein Test und kein Einstiegspunkt genannt. Beginne damit, im Guide den Abschnitt zu Stolperfallen oder zur Mutation von Listen zu finden, und füge dann diesen Fall += versus + hinzu; die Aufgabe ist erledigt, wenn das Beispiel und die sicherere Alternative im passenden Dokumentationsabschnitt erscheinen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
python
Bereich
documentation
Issue-Typ
Dokumentation
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
50/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.