cari
Rumahpembangunan bahagian belakangTutorial PythonBagaimana untuk melaksanakan pemilihan rawak berwajaran dalam Python?

Bagaimana untuk melaksanakan pemilihan rawak berwajaran dalam Python?

Python ialah bahasa pengaturcaraan yang fleksibel dan cekap yang menyediakan pelbagai ciri dan perpustakaan peringkat rendah untuk menambah baik tugas pengekodan yang kompleks. Salah satu tugas adalah untuk melaksanakan wajaran membuat keputusan tidak teratur, strategi yang boleh diukur di mana segala-galanya mempunyai kebarangkalian yang telah ditetapkan untuk dipilih. Tidak seperti pemilihan rawak mudah, di mana setiap item mempunyai peluang yang sama untuk dipilih, pemilihan rawak berwajaran membolehkan kami menentukan kebarangkalian setiap item dipilih, yang mungkin berbeza-beza. Artikel ini bertujuan untuk memberikan pemahaman yang komprehensif tentang cara mendapatkan pemilihan rawak berwajaran dalam Python.

Tatabahasa

Kaedah utama dalam Python yang memudahkan pilihan rawak berwajaran ialah random.choices(). Ini ialah sintaks asasnya:

random.choices(population, weights=None, cum_weights=None, k=1)
  • Penduduk adalah komponen yang diperlukan. Anda akan memilih daripada senarai ini.

  • Tiada obligasi untuk menyediakan berat badan. Senarai berat yang sepadan dengan setiap ahli individu senarai keseluruhan.

  • cum_weights ialah bidang pilihan sepenuhnya. Senarai berat terkumpul.

  • Huruf k tidak diperlukan. Nombor integer yang menyatakan bilangan item untuk dipilih. Nilai lalai ialah 1.

Algoritma

Untuk lebih memahami operasi pemilihan rawak berwajaran, sila ikuti algoritma langkah demi langkah di bawah:

  • Import modul rawak dalam Python.

  • Tentukan populasi, iaitu senarai elemen yang ingin anda pilih.

  • Tentukan pemberat, iaitu senarai kebarangkalian yang sepadan dengan setiap elemen dalam populasi. Pastikan pemberat konsisten dengan elemen keseluruhan.

  • Gunakan kaedah random.choices() untuk menentukan populasi, berat dan bilangan elemen untuk dipilih.

  • Laksanakan kod dan analisa hasilnya.

Kaedah 1: Gunakan random.choices()

Gunakan kaedah random.choices() dengan parameter berat: Kaedah ini menggunakan fungsi terbina dalam Python untuk memberikan berat setiap elemen secara eksplisit.

Contoh

import random

population = ['Red', 'Blue', 'Green']
weights = [0.6, 0.3, 0.1]

chosen = random.choices(population, weights, k=5)
print(chosen)

Output

['Red', 'Green', 'Blue', 'Blue', 'Blue']

Arahan

Skrip Python ini menggunakan modul ketidakteraturan tersirat, khususnya fungsi random.choices(), untuk menjana penentuan tidak teratur berwajaran berdasarkan senarai perwakilan terkini. Anda boleh memilih pilihan berikut daripada senarai bertajuk "populasi": "merah", "biru", dan "hijau". Senarai "berat" mewakili peluang untuk memilih setiap komponen dalam perkadaran berikut: 60%, 30% dan 10%, masing-masing. Skrip secara rawak memilih lima item daripada pembolehubah "populasi", dengan mengambil kira "berat" yang ditentukan. Ini dicapai dengan memanggil fungsi random.choices dengan parameter yang sesuai. Nilai parameter "k" menunjukkan bilangan perkara untuk dilihat dalam kolam. Selepas itu, elemen yang dipilih akan dicetak.

Kaedah 2: Gunakan numpy.random.choice()

Gunakan numpy.random.choice(): Kaedah ini berfungsi dengan perpustakaan numpy, yang merupakan alat operasi berangka yang berkuasa yang turut menyokong pemilihan rawak berwajaran.

Contoh

import numpy as np

population = ['Red', 'Blue', 'Green']
weights = [0.6, 0.3, 0.1]

chosen = np.random.choice(population, 5, p=weights)
print(chosen)

Output

['Red' 'Red' 'Red' 'Red' 'Blue']

Arahan

Untuk melakukan pemilihan rawak berwajaran, skrip menggunakan perpustakaan numpy dan memanggil fungsi numpy.random.choice(). Senarai "populasi" dan "berat" ditakrifkan dengan cara yang sama seperti kod pertama. Sebaliknya, dengan kaedah ini, parameter kebarangkalian diwakili oleh huruf p dan bukannya perkataan "berat". Skrip secara rawak memilih lima item daripada pembolehubah "populasi" dengan memanggil fungsi np.random.choice dengan parameter populasi, 5, dan p=weights. Pemilihan adalah berdasarkan kebarangkalian tertentu. Daripada menjana senarai seperti kod pertama, kod ini menjana tatasusunan numpy yang mengandungi semua elemen yang dipilih.

Kesimpulan

Dalam artikel ini, kami meneroka dua cara penting untuk melaksanakan pemilihan rawak berwajaran dalam Python menggunakan fungsi terbina dalam dan perpustakaan luaran. Menggunakan kaedah random.choices() dan numpy.random.choice() anda boleh memanipulasi kebarangkalian setiap elemen dalam senarai dengan berkesan, memberikan anda lebih kawalan ke atas pilihan rawak.

Memahami dan melaksanakan pemilihan rawak berwajaran dengan betul adalah penting untuk pelbagai senario, daripada permainan mudah kepada tugasan sains data yang kompleks, kerana ia mencerminkan taburan kebarangkalian tidak sekata yang realistik dalam kehidupan. Dengan menguasai teknik ini, anda menambah alat penting pada kit alat pengaturcaraan Python anda.

Ingat bahawa fungsi random.choices() dan numpy.random.choice() tidak terhad kepada pilihan rawak berwajaran - ia menawarkan lebih banyak lagi. Jangan ragu untuk menyelidiki perpustakaan ini untuk membuka kunci potensi penuh Python. Ingat, latihan adalah kunci untuk menguasai sebarang konsep, jadi teruskan pengekodan dan teruskan meneroka!

Atas ialah kandungan terperinci Bagaimana untuk melaksanakan pemilihan rawak berwajaran dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Artikel ini dikembalikan pada:tutorialspoint. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Python vs C: Aplikasi dan kes penggunaan dibandingkanPython vs C: Aplikasi dan kes penggunaan dibandingkanApr 12, 2025 am 12:01 AM

Python sesuai untuk sains data, pembangunan web dan tugas automasi, manakala C sesuai untuk pengaturcaraan sistem, pembangunan permainan dan sistem tertanam. Python terkenal dengan kesederhanaan dan ekosistem yang kuat, manakala C dikenali dengan keupayaan kawalan dan keupayaan kawalan yang mendasari.

Rancangan Python 2 jam: Pendekatan yang realistikRancangan Python 2 jam: Pendekatan yang realistikApr 11, 2025 am 12:04 AM

Anda boleh mempelajari konsep pengaturcaraan asas dan kemahiran Python dalam masa 2 jam. 1. Belajar Pembolehubah dan Jenis Data, 2.

Python: meneroka aplikasi utamanyaPython: meneroka aplikasi utamanyaApr 10, 2025 am 09:41 AM

Python digunakan secara meluas dalam bidang pembangunan web, sains data, pembelajaran mesin, automasi dan skrip. 1) Dalam pembangunan web, kerangka Django dan Flask memudahkan proses pembangunan. 2) Dalam bidang sains data dan pembelajaran mesin, numpy, panda, scikit-learn dan perpustakaan tensorflow memberikan sokongan yang kuat. 3) Dari segi automasi dan skrip, Python sesuai untuk tugas -tugas seperti ujian automatik dan pengurusan sistem.

Berapa banyak python yang boleh anda pelajari dalam 2 jam?Berapa banyak python yang boleh anda pelajari dalam 2 jam?Apr 09, 2025 pm 04:33 PM

Anda boleh mempelajari asas -asas Python dalam masa dua jam. 1. Belajar pembolehubah dan jenis data, 2. Struktur kawalan induk seperti jika pernyataan dan gelung, 3 memahami definisi dan penggunaan fungsi. Ini akan membantu anda mula menulis program python mudah.

Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam Kaedah Projek dan Masalah Dikemukakan Dalam masa 10 Jam?Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam Kaedah Projek dan Masalah Dikemukakan Dalam masa 10 Jam?Apr 02, 2025 am 07:18 AM

Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam masa 10 jam? Sekiranya anda hanya mempunyai 10 jam untuk mengajar pemula komputer beberapa pengetahuan pengaturcaraan, apa yang akan anda pilih untuk mengajar ...

Bagaimana untuk mengelakkan dikesan oleh penyemak imbas apabila menggunakan fiddler di mana-mana untuk membaca lelaki-dalam-tengah?Bagaimana untuk mengelakkan dikesan oleh penyemak imbas apabila menggunakan fiddler di mana-mana untuk membaca lelaki-dalam-tengah?Apr 02, 2025 am 07:15 AM

Cara mengelakkan dikesan semasa menggunakan fiddlerevery di mana untuk bacaan lelaki-dalam-pertengahan apabila anda menggunakan fiddlerevery di mana ...

Apa yang perlu saya lakukan jika modul '__builtin__' tidak dijumpai apabila memuatkan fail acar di Python 3.6?Apa yang perlu saya lakukan jika modul '__builtin__' tidak dijumpai apabila memuatkan fail acar di Python 3.6?Apr 02, 2025 am 07:12 AM

Memuatkan Fail Pickle di Python 3.6 Kesalahan Laporan Alam Sekitar: ModulenotFoundError: Nomodulenamed ...

Bagaimana untuk meningkatkan ketepatan segmentasi kata Jieba dalam analisis komen tempat yang indah?Bagaimana untuk meningkatkan ketepatan segmentasi kata Jieba dalam analisis komen tempat yang indah?Apr 02, 2025 am 07:09 AM

Bagaimana untuk menyelesaikan masalah segmentasi kata Jieba dalam analisis komen tempat yang indah? Semasa kami mengadakan komen dan analisis tempat yang indah, kami sering menggunakan alat segmentasi perkataan jieba untuk memproses teks ...

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

SecLists

SecLists

SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

EditPlus versi Cina retak

EditPlus versi Cina retak

Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft