用python写一个原神抽卡模拟器
时间: 2024-04-27 10:24:44 浏览: 118
好的,下面是一个简单的原神抽卡模拟器的代码,它可以随机模拟抽卡过程,并根据概率给出不同星级的角色和武器。
```python
import random
# 定义角色和武器的概率
RATES = {
3: {
'character': 0.94,
'weapon': 0.06
},
4: {
'character': 0.06,
'weapon': 0.06
},
5: {
'character': 0.007,
'weapon': 0.06
}
}
# 定义角色和武器的列表
CHARACTERS = [
'迪卢克', '莫娜', '刻晴', '七七', '温迪',
'可莉', '钟离', '甘雨', '胡桃', '阿贝多',
'达达利亚', '迪奥娜', '辛焱', '枫原万叶', '香菱',
'北斗', '行秋', '重云', '砂糖', '凯亚',
'安柏', '芭芭拉', '班尼特', '菲谢尔', '雷泽'
]
WEAPONS = [
'狼的末路', '天空之翼', '和璞鸢', '四风原典', '天空之卷',
'黑剑', '匣里灭辰', '宗室大剑', '西风剑', '笛剑',
'祭礼剑', '流浪乐章', '琉球弓箭', '弓藏', '绝弦',
'祭礼弓', '翡玉法球', '和璞鸢', '天空之傲', '匣里龙吟'
]
# 定义抽卡函数
def draw():
# 随机生成一个0~1之间的数,用于判断角色或武器
r = random.random()
# 根据概率生成不同星级的角色或武器
if r < RATES[5]['character']:
return '5星角色:' + random.choice(CHARACTERS)
elif r < RATES[5]['character'] + RATES[4]['character']:
return '4星角色:' + random.choice(CHARACTERS)
elif r < RATES[5]['character'] + RATES[4]['character'] + RATES[3]['character']:
return '3星角色:' + random.choice(CHARACTERS)
elif r < RATES[5]['character'] + RATES[4]['character'] + RATES[3]['character'] + RATES[5]['weapon']:
return '5星武器:' + random.choice(WEAPONS)
else:
return '4星武器:' + random.choice(WEAPONS)
# 模拟抽10次
for i in range(10):
print(draw())
```
这个模拟器会随机生成10次抽卡结果,其中包括不同星级的角色和武器。你可以根据需要修改概率和列表,以及抽卡次数。
阅读全文