-2

Python は初めてなので、次の操作の結果がわかりません。astropy.Table を使用してファイルからテーブルを読み取りました

data = Table.read(image_data_file, format='ascii')

次に、新しい同一のテーブルを作成します。

data2 = data

新しいテーブル「data2」のエントリ(または列全体)を変更すると、元のテーブル「data」でも変更されます。

data2['col2'] = 0 

どうしてこれなの?

4

2 に答える 2

0

これはここで何度も回答されていますが、どの名前で覚えていません。

Python では、次のようにします。

a = [1, 2, 3]
b = a
b.append(4)
b[2] = 5

その後、a と b は両方ともまったく同じデータになります。

これは b = a であるため、実際には、Python は両方の変数を舞台裏で同じメモリ アドレスにポイントします。

于 2015-09-26T17:24:13.487 に答える