Logique gacha simple écrite en Python

Contenu

Pondérer chaque élément et effectuer n gachas consécutifs

Paramètres

Les éléments suivants sont préparés comme paramètres

#ID d'article et dictionnaire de poids pour la loterie
item_dic = {"id_1":1,"id_2":5,"id_3":14,"id_4":30,"id_5":50}
#Nombre de loterie
times = 11

Fonction de traitement Gacha

import random
def gacha(item_dic, times):
	total_weight = 0
	for value in item_dic.values():
		total_weight += value

	results = []
	for i in range(times):
	    results.append(lottery(item_dic,total_weight))

    return results

def lottery(item_dic, total_weight):
	score = random.randint(1,total_weight)
	range_max = 0
	for item_key, weight in item_dic.items():
		range_max += weight
		if score <= range_max:
			return item_key			

Exécuter gacha

item_list = gacha(item_dic, times)

Je pense qu'il y a une plus belle façon de l'écrire, mais pour le moment.

Recommended Posts

Logique gacha simple écrite en Python
Gacha écrit en Python -BOX Gacha-
Gacha écrit en python-Practice 1-
Gacha écrit en Python-Data design-
Analyse de régression simple avec Python
Client IRC simple avec python
Première analyse de régression simple en Python
OAuth 2 simple avec Python (urllib + oauthlib)
Programme de diagnostic de compatibilité écrit en python
Implémentation d'un algorithme simple en Python 2
Exécutez un algorithme simple en Python
Code de vérification de la série Fourier écrit en Python
Test de stress avec Locust écrit en Python
Un client HTTP simple implémenté en Python
Essayez de dessiner une animation simple en Python
Créer une application GUI simple en Python
Probabilité de transition de la chaîne de Markov écrite en Python
Gacha écrit en python-Rareté confirmée avec bonus-
Ecrire une méthode de cupidité simple en Python
Gacha écrit en python-Implémentation dans la structure de données de base-
Gacha écrit en python-Practice 2 ・ Bases du step-up gacha-
Quadtree en Python --2
Python en optimisation
Métaprogrammation avec Python
Python 3.3 avec Anaconda
Géocodage en python
SendKeys en Python
Méta-analyse en Python
Unittest en Python
Époque en Python
Discord en Python
Allemand en Python
nCr en python
N-Gram en Python
Programmation avec Python
Plink en Python
FizzBuzz en Python
Sqlite en Python
LINE-Bot [0] en Python
CSV en Python
Assemblage inversé avec Python
Constante en Python
nCr en Python.
format en python
Scons en Python 3
Puyopuyo en python
python dans virtualenv
PPAP en Python
Quad-tree en Python
Réflexion en Python
Chimie avec Python
Hashable en Python
DirectLiNGAM en Python
LiNGAM en Python
Aplatir en Python
Aplatir en python
Configurer un serveur HTTPS simple avec Python 3
Étudier les mathématiques avec Python: résoudre des problèmes simples de probabilité
Gacha écrit en python-Practice 3 ・ Ajout de fonctions gacha step-up-