Add new gotcha

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

Dieses Issue hat noch niemand übernommen.

Bewertung

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

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.

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.

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

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus realpython/python-guide

Alle Issues in realpython/python-guide

Ähnliche Issues

Weitere Issues zu Documentation

Neue Issues direkt in Ihr Postfach

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