a[:] akan mencipta salinan a, jadi b=a[:] akan membenarkan b merujuk kepada salinan ini, iaitu, b dan a kini merujuk kepada objek yang berbeza, tetapi ini dua objek adalah sama (tidak sama tetapi setara)
Inilah sebabnya pada zahirnya tidak ada perbezaan antara keduanya, tetapi jika ia adalah yang pertama, jika kita menukar b atau a kedua-duanya akan terjejas, kerana merujuk kepada objek yang sama, tetapi yang kedua tidak menjejaskan satu sama lain , kerana kedua-duanya merujuk kepada objek yang berbeza. Contoh @hsfzxjy ialah menunjukkan perkara ini, dan anda boleh mengetahui perbezaannya dengan melakukan eksperimen.
Python mempunyai fungsi yang dipanggil id yang boleh mendapatkan alamat objek. Ia akan menjadi jelas jika anda mencetaknya. Direct = ialah tugasan rujukan, merujuk kepada objek asal; manakala [:] ialah terbitan semula, yang akan menjana objek baharu
Anda memanggilnya
Anda boleh lihat perbezaannya:
Yang pertama lulus rujukan
Yang terakhir ialah salinan
yang dirujuk olehb=a
akan menjadikanb
merujuk kepada objeka
a[:]
akan mencipta salinan a, jadib=a[:]
akan membenarkanb
merujuk kepada salinan ini, iaitu,b
dana
kini merujuk kepada objek yang berbeza, tetapi ini dua objek adalah sama (tidak sama tetapi setara)Inilah sebabnya pada zahirnya tidak ada perbezaan antara keduanya, tetapi jika ia adalah yang pertama, jika kita menukar
b
ataua
kedua-duanya akan terjejas, kerana merujuk kepada objek yang sama, tetapi yang kedua tidak menjejaskan satu sama lain , kerana kedua-duanya merujuk kepada objek yang berbeza. Contoh @hsfzxjy ialah menunjukkan perkara ini, dan anda boleh mengetahui perbezaannya dengan melakukan eksperimen.Soalan yang saya jawab: Python-QA
Python mempunyai fungsi yang dipanggil id yang boleh mendapatkan alamat objek. Ia akan menjadi jelas jika anda mencetaknya. Direct = ialah tugasan rujukan, merujuk kepada objek asal; manakala [:] ialah terbitan semula, yang akan menjana objek baharu