Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapakah `random.shuffle` Python Mengembalikan `Tiada` Apabila Mengocok Objek?

Mengapakah `random.shuffle` Python Mengembalikan `Tiada` Apabila Mengocok Objek?

Susan Sarandon
Lepaskan: 2024-12-14 14:36:20
asal
609 orang telah melayarinya

Why Does Python's `random.shuffle` Return `None` When Shuffling Objects?

Mengocok Senarai Objek

Apabila cuba mengocok senarai objek menggunakan fungsi random.shuffle dalam Python, anda mungkin menghadapi isu menerima output Tiada. Tidak seperti senarai integer, mengocok objek memerlukan sedikit pertimbangan.

Memahami random.shuffle

random.shuffle beroperasi pada objek boleh ubah di tempatnya, bermakna ia secara langsung mengubah suai senarai asal. Fungsi ini tidak mengembalikan senarai yang dikocok sebaliknya mengubah suai senarai input. Akibatnya, ia mengembalikan Tiada untuk menunjukkan bahawa tiada nilai sebenar dikembalikan.

Penyelesaian

Untuk menyelesaikan isu, pastikan senarai input mengandungi objek boleh ubah, seperti senarai. Berikut ialah contoh:

from random import shuffle

# Create a list of lists as objects
x = [[i] for i in range(10)]

# Shuffle the list of objects in place
shuffle(x)

# Print the shuffled list
print(x)
Salin selepas log masuk

Output:

[[9], [2], [7], [0], [4], [5], [3], [1], [8], [6]]
Salin selepas log masuk

Dengan menggunakan senarai sebagai objek, random.shuffle boleh mengubah suai senarai asal dengan berkesan dan memberikan output kocok yang diingini. Ingat bahawa apabila berurusan dengan objek boleh ubah, adalah perkara biasa untuk fungsi mengembalikan Tiada selepas mengubah suai objek di tempatnya.

Atas ialah kandungan terperinci Mengapakah `random.shuffle` Python Mengembalikan `Tiada` Apabila Mengocok Objek?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan