马上要过年了,用 Python 写一副春联&福字送给大家,本文我们主要用到的 Python 库为 tkinter,下面一起来看一下具体代码实现。
首先,我们创建一个画布,代码实现如下:
root=Tk()
root.title('新年快乐')
canvas=Canvas(root,width=500,height=460,bg='lightsalmon')
看一下效果:
接着我们写上联,主要代码实现如下:
for i in range(0,451):
canvas.create_rectangle(10,3,76,i,outline='#FFA07A',fill='red')
root.update()
for i in range(len(str_1)):
canvas.create_text(40,str_2[i],text=str_1[i],fill='#FFD700',font=('楷体',30,'bold'))
root.update()
time.sleep(0.5)
看一下效果:
再接着写横批,主要代码实现如下:
for i in range(150,350):
canvas.create_rectangle(150,3,i,62,outline='#FFA07A',fill='red')
root.update()
for i in range(len(str_4)):
canvas.create_text(str_5[i],33,text=str_4[i],fill='#FFD700',font=('楷体',30,'bold'))
root.update()
time.sleep(0.5)
看一下效果:
再接着写下联,主要代码实现如下:
for i in range(0,451):
canvas.create_rectangle(424,3,490,i,outline='#FFA07A',fill='red')
root.update()
for i in range(len(str_3)):
canvas.create_text(454,str_2[i],text=str_3[i],fill='#FFD700',font=('楷体',30,'bold'))
root.update()
time.sleep(0.5)
看一下效果:
我们再接着画一扇简单的门,主要代码实现如下:
for i in range(167,251):
canvas.create_rectangle(167,130,i,441,outline='#FFA07A',fill='red')
root.update()
for i in range(250,334):
canvas.create_rectangle(250,130,i,441,outline='#FFA07A',fill='red')
root.update()
看一下效果:
感觉门上有点光秃秃的,这样,我们再接着在门上写两个福字,代码实现如下:
canvas.create_text(210,280,fill='#FFD700',text='福',font=('楷体',45,'bold'))
canvas.create_text(290,280,fill='#FFD700',text='福',font=('楷体',45,'bold'))
看一下最终效果: