Housie/Tambola using Python with Tickets in PDF file
#HOUSIE IN PYTHON!
#if you have'nt installed fpdf from cmd then do open cmd>type #pip install fpdf >enter
from random import *
from fpdf import FPDF
def ImportantOne(x):
xxx=False
while xxx!=True:
tkt=[]
for i in range(3):
lis=[]
u=10
l=1
for j in range(9):
no=randint(l,u)
lis.append(no)
u+=10
l+=10
tkt.append(lis)
for i in range(1):
u=11
l=1
for j in range(9):
li=sample(range(l,u),3)
zx=0
tkt[i][j]=li[zx]
zx+=1
tkt[i+1][j]=li[zx]
zx+=1
tkt[i+2][j]=li[zx]
u+=10
l+=10
for i in range(1):
for j in range(9):
if tkt[i][j]>tkt[i+1][j]:
tkt[i][j],tkt[i+1][j]=tkt[i+1][j],tkt[i][j]
if tkt[i][j]>tkt[i+2][j]:
tkt[i][j],tkt[i+2][j]=tkt[i+2][j],tkt[i][j]
if tkt[i+1][j]>tkt[i+2][j]:
tkt[i+1][j],tkt[i+2][j]=tkt[i+2][j],tkt[i+1][j]
for i in range(3):
li=sample(range(0,9),4)
sf=0
for j in range(9):
while sf!=4:
rg=li[sf]
tkt[i][rg]=" "
sf+=1
flag=0
for j in range(9):
if tkt[0][j]==" " and tkt[1][j]==" " and tkt[0][j]==" ":
flag+=1
if flag==0:
x+=1
# print("======================================================")
dd=str(x)
ff="Ticket No."+dd
#print(" Ticket No:",x)
#print("======================================================")
fout.write("=================================================================")
fout.write("\n")
fout.write(ff)
fout.write("\n")
fout.write("=================================================================")
fout.write("\n")
for i in range(3):
for j in range(9):
x=str(tkt[i][j])
fs="{0:>3}".format(x)
jjh=" | " +fs
fout.write(jjh)
# print(fs,end=" | ")
# print("\n")
fout.write("\n")
fout.write("\n\n")
xxx=True
def GeneratingNumbers():
no=[]
no=sample(range(1,91),90)
x=len(no)
s=0
for i in range(x):
if i%10!=0:
print(no[i],end=" | ")
else:
print("\n")
#input()
#GeneratingTicket()
n=int(input("Enter No. of Tickets You want : "))
name=input('Enter Filename (without extension:')
nname=name+'.txt'
fout=open(nname,'w')
for i in range(n):
ImportantOne(i)
fout.close()
pdf = FPDF()
pdf.add_page()
pdf.set_font('Courier', size = 16)
fout=open(nname, "r")
for i in fout:
pdf.cell(200, 10, txt = i, ln = 1, align = 'L')
nname=name+'.pdf'
pdf.output(nname)
print('Your PDF file with {} tickets have been generated.'.format(n))
Comments
Post a Comment