⽤python解九宫格以及画图之完整代码
之前做了个⽤python解九宫格的视频,有⽹友想要完整的代码⾃⼰练习,所以就以⽂本的⽅式写了这篇⽂章,其实思路很简单,⼀个是画图部分,⽤的是turtle库。从3⽉19⽇到发这篇⽂章已经做了7期关于turtle的视频,每次都是⼀个⼩例⼦,但是每⼀个例⼦都不是独⽴的,每个视频都是基于前⼀个视频介绍过的函数⼜增加了新的函数的介绍,所以是循序渐进的,通过7期视频,把turtle库⾥的基本函数都基本上涵盖了⼀遍,你都看过的话,这个turtle库⽤起来基本上已经没多⼤问题了,当然以后还会继续补充。
演⽰图
所以像这个九宫格,⾸先就是画单独的⽅型,这个函数要⾃⼰写:
import turtle as t
t.speed(0)
def zfx(a=200):
for i in range(4):
t.forward(a)
t.left(90)
然后再写⼀个函数,主要是为了给正⽅形做颜⾊填充和显⽰⽂字
def zfx2(a=100,x=0,y=0,c=‘gray’,s=’’):
t.up()
<(x,y)
t.down()
t.fillcolor©
t.begin_fill()
zfx(a)
t.forward(a/2)
t.write(str(s),align=‘center’,font=(‘宋体’,50,‘bold’))
然后就是画九宫格的函数,画九个格⼦,接收⼀个参数,⼀个字符串,把要显⽰的数字传进来。最后,如果你的时间不是很紧张,并且⼜想快速的提⾼,最重要的是不怕吃苦,建议你可以联系维:762459510 ,那个真的很不错,很多⼈进步都很快,需要你不怕吃苦哦!⼤家可以去添加上看⼀下~
def jgg(s=‘012345678’):
zfx2(x=-150,y=50,c=‘gray’,s=s[0])
zfx2(x=-50,y=50,c=‘white’,s=s[1])
zfx2(x=50,y=50,c=‘gray’,s=s[2])
zfx2(x=-150,y=-50,c=‘white’,s=s[3])
zfx2(x=-50,y=-50,c=‘gray’,s=s[4])
zfx2(x=50,y=-50,c=‘white’,s=s[5])
zfx2(x=-150,y=-150,c=‘gray’,s=s[6])
zfx2(x=-50,y=-150,c=‘white’,s=s[7])
zfx2(x=50,y=-150,c=‘gray’,s=s[8])
⼀开始显⽰问号
jgg(’?’*9)
以上是画图的部分,后⾯代码就是视频⾥讲解过的了,暴⼒算法,⽤到random的库shuffle函数,这个
函数可以打乱元素。然后8个条件满⾜了就画图,all函数是列表所有元素都是True那么就返回True,这个⽤来这⾥代码写起来就⽐较简洁了,不要写⼀堆逻辑运算或者条件运算了。
import random
n=[1,2,3,4,5,6,7,8,9]
w=t.Screen()
def run(x,y):
while(1):
random.shuffle(n)
real=[(n[0]+n[1]+n[2])==15,
(n[3]+n[4]+n[5])==15,
(n[6]+n[7]+n[8])==15,
python新手代码画图
(n[0]+n[3]+n[6])==15,
(n[1]+n[4]+n[7])==15,
(n[2]+n[5]+n[8])==15,
(n[0]+n[4]+n[8])==15,
(n[2]+n[4]+n[6])==15]
if all(real):
jgg(n)
break
t.mainloop()
完整的代码已经统统都贴上来了,其实就只有turtle⾥点击事件是这个视频⾥的新内容,其他都是⽼内容,都是在复习以前的知识,代码写的太乱,变量函数也随意命名的,本来不好意思贴出来,为了帮助初学者就全都发出来了,降低⼤家学习python的难度,能快快看到学习的成果,这样就有兴趣能学
下去。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。