Python算法
什么是算法
请输入两个数X和Y,计算两个数的和
1.输入数字X,数字Y
2.计算X+Y
3.输出结果
算法可以用来做什么?
交通导航

淘宝推送算法

算法的基本使用
绘制正六边形的代码
#导入海龟库
import turtle
pen=turtle.Pen()
#设置参数
length=100;
n=6
for i in range(n):
pen.forward(length)
pen.left(60)
turtle.done()
1.如果我想增多边数,应该怎么做?
2.如何简化这个过程?
改进代码
#导入海龟库
import turtle
pen=turtle.Pen()
#设置参数
length=100;
n=7
for i in range(n):
pen.forward(length)
pen.left(360/n)
turtle.done()
改进代码
#导入海龟库
import turtle
pen=turtle.Pen()
#设置参数,
length=300;
n=7
for i in range(n):
#控制图形的大小
pen.forward(length/n)
pen.left(360/n)
turtle.done()
绘制多彩多边形
绘制多彩多边形

绘制多彩多边形
在Python当中我们使用%来获取余数
print(5%2)
print(8%3)
# 1
# 2
绘制多彩多边形
取余可以将一个不断变换的数字或者索引限制在一定的范围之内
#将数字限定大小2以下
for i in range(10):
print(i,i%2)
绘制多彩多边形
#导入海龟库
import turtle
pen=turtle.Pen()
#设置颜色
color=["red","yellow","orange","green"]
#设置参数,
length=300;
n=7
for i in range(n):
#控制图形的大小
pen.pencolor(color[i%4])
pen.forward(length/n)
pen.left(360/n)
turtle.done()
综合练习
绘 制 五 角 星

- 角度为36度
- 长度为100
绘 制 五 角 星
import turtle
#设置画笔参数
pen=turtle.Pen()
pen.pensize(3)
#设置颜色
colors=["red","yellow","orange","green","blue","black"]
#开始绘制
for i in range(5):
for j in range(6):
pen.pencolor(colors[j])
pen.forward(50)
pen.right(144)
#绘制完成
turtle.done()
绘制以下图形
小格子长度为25
大正方形的长度为200
import turtle
pen=turtle.Pen()
pen.fillcolor("black")
#创建函数,绘制正方形
def square():
pen.begin_fill()
pen.right(90)
pen.forward(25)
pen.left(90)
pen.forward(25)
pen.left(90)
pen.forward(25)
pen.right(90)
pen.end_fill()
#绘制大棋盘
for i in range(4):
pen.forward(200);
pen.right(90)
#绘制黑色格子
for i in range(8): #有8行
pen.penup() #确定每一行的位置
pen.goto(0,-i*25)
pen.pendown()
if i%2==0: #判断是从第一个开始画,还是第二个格子开始画
pen.forward(25)
for j in range(4): #每一行有4个
square()
if i%2==0 and j==3:
break
pen.forward(25)
turtle.done()
棋盘绘制

小格子长度为25
大正方形的长度为200
棋盘绘制
import turtle
pen=turtle.Pen()
pen.fillcolor("black")
#创建函数,绘制正方形
def square():
pen.begin_fill()
pen.right(90)
pen.forward(25)
pen.left(90)
pen.forward(25)
pen.left(90)
pen.forward(25)
pen.right(90)
pen.end_fill()
#绘制大棋盘
for i in range(4):
pen.forward(200);
pen.right(90)
#绘制黑色格子
for i in range(8): #有8行
pen.penup() #确定每一行的位置
pen.goto(0,-i*25)
pen.pendown()
if i%2==0: #判断是从第一个开始画,还是第二个格子开始画
pen.forward(25)
for j in range(4): #每一行有4个
square()
if i%2==0 and j==3:
break
pen.forward(25)
turtle.done()
Python算法
By yang he
Python算法
- 304