模拟获取武将
作者:互联网
import random
import openpyxl
import time
n1=int(input('输入要开箱次数:'))
n=1
cflb=0
while n<=n1:
r=random.randint(1,10001)
#rint(r)
#加载Excel文件(创建一个Python中的工作簿对象)
wb=openpyxl.load_workbook('三国杀灵宝概率.xlsx')
sheet=wb['Sheet1']
col=sheet['F']
qj=[]
iq=0
coun=0
for i in (col):
try:
xqj=[x for x in range(iq+1,i.value+1)]
qj.append(xqj)
iq=i.value
#print(xqj)
except:
pass
# if coun==1: #只为查看某个区间
# print(xqj)
# coun+=1
def jianglidj(s1):
for q in qj:
if s1 in q:
#print('概率为{:.2%}'.format(len(q)/10000))
return qj.index(q)
#print(qj)
#print(jianglidj(r))
#print(qj[0])
col1=sheet['A']
wjk=[]
for i in col1:
wj=i.value.split()
wjk.append(wj)
#print(wj)
#print(wjk[jianglidj(r)])
wj1=random.choice(wjk[jianglidj(r)])
cf=sheet[f'B{jianglidj(r)+1}']
gl=sheet[f'C{jianglidj(r)+1}']
cflb+=cf.value
print(f'获得武将 {wj1}',f'重复返灵宝 {cf.value}')
print('概率为 {:.2%}'.format(gl.value)) #'a is {:.2%} .'.format(a)
print('第{0}次开箱,至少获得{1}灵宝'.format(n,cflb))
print()
n+=1
time.sleep(1)
标签:openpyxl,int,random,获取,while,武将,import,模拟,cflb 来源: https://blog.csdn.net/qq_51679796/article/details/113728693