Fungsi lotere Scratch Python – Stack Overflow

Anda memulai dengan awal yang baik, tetapi ada sesuatu yang dapat membuat hidup Anda jauh lebih mudah. Pertama, mari gunakan random.choices untuk membuat daftar dari kemungkinan huruf:

import random

pool = ['x', 'o', 'p', 'k', 'm', 'e', 'a', 'w']
results = random.choices(pool, k=len(pool))

Catatan: k dapat berupa bilangan bulat apa pun – ini menentukan panjang daftar yang dihasilkan

Ini akan menghasilkan daftar dengan huruf acak dari pool:

['e', 'x', 'a', 'm', 'x', 'k', 'o', 'p']

Sekarang, Anda dapat memikirkan tentang bagaimana Anda dapat membangun file if pernyataan dari daftar.

Jika 2 dari str di a atau b atau c atau d atau e atau f sama:

Ini terdengar seperti pekerjaan untuk iterasi. Ingat, kami tidak memiliki variabel a, b, c, dll. lagi; sebaliknya, mereka disimpan dalam daftar.

for letter in pool:
    if results.count(letter) > 1:
        # match found

Di atas, Anda mengulang melalui pool variabel, yang menampung semua nilai yang mungkin. Di setiap loop iterasi itu, kami memeriksa apakah saat ini letter yang berada di dalam pool daftar ada lebih dari sekali dalam results daftar. Artinya ada kecocokan.

Lebih

Anda dapat secara dinamis meningkatkan jumlah uang pemain hanya dengan beberapa baris jika Anda menyimpan daftar kemungkinan kemenangan yang sesuai dengan jumlah pertandingan tertentu. Sebagai contoh,

winnings = [100, 200, 300, 400, 500, 600, 700, 800]

Sini, 100 dipilih jika ada dua huruf yang sama (1 kecocokan). Jika ada tiga surat yang sama (2 pertandingan), 200 terpilih.

player_money = 0
for letter in pool:
    result_count = results.count(letter)
    player_money += winnings[result_count-2] if result_count > 1 else 0

Di atas garis winnings[result_count-2] if result_count > 1 else 0 menentukan berapa banyak pemain harus menerima berdasarkan pertandingan mereka. Kita harus mengurangi 2 dari result_count karena, ingat, pengindeksan python dimulai dari 0, dan jika ada dua huruf yang sama dalam daftar yang dihasilkan (1 pertandingan), kita perlu mengurangi 2 untuk menjadikannya 0, yang akan memilih kemenangan yang benar.

Undian spesial Data SGP 2020 – 2021. Cashback terbaru yang lain tersedia diperhatikan secara terjadwal via kabar yg kami sampaikan dalam website itu, serta juga bisa ditanyakan kepada operator LiveChat pendukung kami yang ada 24 jam On the internet untuk meladeni seluruh kepentingan para pemain. Mari langsung daftar, serta menangkan jackpot Buntut & Kasino Online terbaik yg tampil di website kita.