1、首先,打开python软件,进入首页,然后在首页中,点击导入科赫雪花。
创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站设计、成都网站设计、马龙网络推广、小程序制作、马龙网络营销、马龙企业策划、马龙品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供马龙建站搭建服务,24小时服务热线:18982081108,官方网址:www.cdcxhl.com
2、其次,导入之后,点击模块选项,然后使用内置模块turtle。
3、最后,使用后即可改为90度。
import random
import turtle
def random_color():
rgbl=[255,0,0]
random.shuffle(rgbl)
return tuple(rgbl)
def koch(size,n):
if n==0:
turtle.fd(size)
else:
for angle in [0,60,-120,60]:
cc = random_color()
turtle.pencolor(cc[0], cc[1], cc[2])
turtle.left(angle)
koch(size/3,n-1)
def main():
turtle.colormode(255)
turtle.setup(600,600)
turtle.penup()
turtle.goto(-200,100)
turtle.pendown()
turtle.pensize(2)
level=4 #4阶科赫雪花,阶数
koch(400,level)
turtle.right(120)
koch(400,level)
turtle.right(120)
koch(400,level)
turtle.hideturtle()
turtle.done()
main()
效果如图:
import turtle
def kehe(long,n):
if n == 0:
turtle.fd(long)
else:
for angle in [0,90,-90,-90,90]:
turtle.left(angle)
kehe(long/2,n-1)
def main():
turtle.setup(600,600)
turtle.penup()
turtle.speed(0)
turtle.goto(-200,100)
turtle.pendown()
turtle.pensize(2)
level = 2
for i in range(4):
kehe(50,level)
turtle.right(90)
turtle.hideturtle()
main()
for 变量 in range(次数):被执行的语句 变量:表示每次循环的次数,0-1之间
range(n)n表示产生0到n-1的整数序列共N个 range(m,n) 产生m到n-1的整数序列,共n-m个
循环for语句 :for 循环变量 in遍历结构:语句体1 else:语句体2
无限循环: while条件: 语句块
while 条件:语句体1 else: 语句体2
循环保留字:break continue
方法1:from random import random
from time import perf_counter
DARTS=1000
hits=0.0
start =perf_counter()
for i in range(1,DARTS+1):
x,y=random(),random()
dist=pow(x**2+y**2,0.5)
if dist=1.0:
hits =hits+1
pi=4*(hits/DARTS)
print("圆周率是:{}".format(pi))
print("运行时间是{:.5f}s".format(perf_counter()-start))
方法2:
pi=0
n=100
for k in range(n):
pi += 1/pow(16,k)*(\
4/(8*k+1)-2/(8*k+4) - \
1/(8*k+5) - 1/(8*k+6))
print("圆周率值是:{}".format(pi))
def 函数名 (0个或者多个):函数体 renturn 返回值
def 函数名 (非可选参数,可选参数):函数体 renturn 返回值
参数传递的两种方式:位置传递,名称传递
科赫雪花:
import turtle
def koch(size,n):
if n==0:
turtle.fd(size)
else:
for angle in [0,60,-120,60]:
turtle.left(angle)
koch(size/3,n-1)
def main():
turtle.setup(400,200)
turtle.penup()
turtle.pendown()
turtle.pensize(2)
l=3
koch(600,l)
turtle.right(120)
turtle.pencolor('blue')
koch(600,l)
turtle.right(120)
turtle.pencolor('red')
koch(600,l)
turtle.speed(3000)
turtle.hideturtle()
main()
阶乘:
def fact(n):
s=1
for i in range(1,n+1):
s*=i
return s
c=eval(input("从键盘输入一个数字"))
print("阶乘结果",fact(c))
这是一人递归调用,koch中,又调用了自已,结束条件是,n==0, 每次递归取1/3的size, 然后n-1 ,直到n==0结束。如果你不了解归函数可以baidu一下。