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