realpython / realpython/python-guide

Add new gotcha

オープン
#1,158 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
Batchfile
スター
29.8k
フォーク
5.9k
PR マージ指標
30日以内にマージされた PR はありません

説明

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.

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

issue にはファイル、テスト、エントリーポイントのいずれも記載されていません。まず、ガイド内で落とし穴またはリストのミューテーションに関するセクションを見つけ、次にこの +=+ のケースを追加してください。適切なドキュメントセクションに例とより安全な代替案が掲載されれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
python
領域
documentation
issue の種類
ドキュメント
難易度
2/5
見積もり時間
1〜3時間
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
50/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。