Templates

中文

**模板库**(Old version editor called “Templates”) is used to generate a piece of code.

In Old version editor, it will replace the existing code. In New version editor, it uses block mode “Python作品”.

# 试试用更个性的方式欢迎新朋友吧！
print('你好！',name,'，欢迎来到源码世界！')

```

# 试试创作属于你自己的文字游戏吧！
print('Hi,训练师，欢迎进入大黄鸡的飞行空间！')
print('准备好出发冒险了吗？')
print('1、准备好了，继续！')
print('2、并没有，我要傲娇地再等等~')
start = input('请输入数字选项：')
while start != '1':
    start = input('现在准备好了吗？请输入数字选项：')
print('糟糕，大黄鸡的发动机坏了，你能帮它找一个新的发动机吗？')
print('1. 好，包在我身上！')
print('2. 不，我懒得找~')
start\_1 = input('请输入数字选项：')
if (start\_1 == '2') :
    print('懒惰是没有办法在冒险中生存下来的，很遗憾，你没有通过考验。')
elif (start\_1 == '1') :
    print('据说在这两个地方找到发动机的几率比较大，你想去哪里找呢？。')
    print('1. 飞机工厂（这里应该会有发动机吧）。')
    print('2. 科学走廊。（感觉不会有发动机）')
    place = input('请输入数字选项：')
    if (place == '1') :
        print('你来到了飞机工厂...')
        print('发现这里竟然一片狼藉！你没有找到发动机~')
        print('1. 这是遭小偷了？算了，去科学走廊看看！')
        print('2. 什么破工厂，哪有什么发动机啊！骗人的吧！')
        place\_1 = input('请输入数字选项：')
        if (place\_1 == '1') :
            print('你来到了科学走廊...')
            print('发现飞电鼠正在科学走廊搞破坏！刚刚飞机工厂肯定也是它干的')
            print('1. 抓住飞电鼠再说。')
            print('2. 再大的事也不能阻挡我找发动机。')
            place\_2 = input('请输入数字选项：')
            if (place\_2 == '1') :
                print('成功抓住飞电鼠！还发现藏在它身上的发动机一枚。')
                print('任务完成！')
            elif (place\_2 == '2') :
                print("一点正义感都没有，大黄鸡才不要带你去冒险呢！游戏结束！")
            else :
                print("随便行动是找不到发动机的...你在源码世界里迷路了...")
        elif (place\_1 == '2') :
            print("鉴于你对游戏产生了质疑，不跟你玩啦~游戏结束，再见！")
        else :
            print("随便行动是找不到发动机的...你在源码世界里迷路了...")
    elif (place == '2') :
        print('糟糕！你发现飞电鼠正在破坏科学走廊！')
        print('1. 抓住飞电鼠再说。')
        print('2. 再大的事也不能阻挡我找发动机。')
        place\_2 = input('请输入数字选项：')
        if (place\_2 == '1') :
            print('恭喜你抓到飞电鼠，成功保护了科学走廊。')
            print('飞电鼠藏起了大黄鸡发动机，你找到了！恭喜你完成任务！')
        elif (place\_2 == '2') :
            print("一点正义感都没有，大黄鸡才不要带你去冒险呢！游戏结束！")
        else :
            print("随便行动是找不到发动机的...你在源码世界里迷路了...")
    else :
        print("看来你和发动机没有缘分啊，游戏结束")
else :
    print("随便行动是找不到发动机的...你在源码世界里迷路了...")

```

##### Code

```
import random

# 修改范围时，记得提示字符串也要更改
the\_number = random.randint(1, 10)
print('Hi，训练师！我们来玩一个猜数字游戏吧！')
guess = int(input('请猜一个1到10之间的秘密数字（包括1和10）: '))
        print(guess,'猜大了，请再来一次！')
    if (guess < the\_number):
        print(guess,'猜小了，请再来一次！')
    guess = int(input('再来一次：'))
print(guess,'就是秘密数字！恭喜你猜对了！')

```

##### Code

```
import random

# 石头剪刀布
choices = ['石头','布','剪刀']
print('Hi，训练师！我是编程猫！很高兴遇见你！现在我们来玩石头剪刀布的游戏吧！')
print('石头剪刀布！')
player = input('你要出石头呢，还是剪刀呢，还是布？（如输入“退出”，可退出游戏）')
# 直到退出游戏之前，下面的循环都会继续
while (player != '退出'):
    # 验证玩家和电脑各自的选择
    computer = random.choice(choices)
    print((((('你出了' + player) + '，电脑出了') + computer) + '...'))
    if (player == computer) :
        print("平局！")
            print("你赢了！")
        else:
            print("电脑赢了！")
            print("你赢了")
        else:
            print("电脑赢了！")
            print("你赢了")
        else:
            print("电脑赢了！")
    else :
        print("出错了哦！只能出“石头”“剪刀”或“布”！")
    # 立即再来一轮，直到退出游戏
    print('石头剪刀布！')
    player = input('你要出石头呢，还是剪刀呢，还是布？（如输入“退出”，可退出游戏）')

```

### 海龟库 —— 使用Python进行创意绘图

##### Code

```
import turtle

\_\_Pen = turtle.Pen()

# 彩色弹球
t = turtle.Pen()
t.speed(0)
turtle.bgcolor('black')
# 改为2、3、4、5、6等，看看效果吧
sides = 5
colors = ['red','yellow','blue','orange','green','purple']
for x in range(360):
    t.pencolor(colors[(x % sides)])
    t.forward(((x \* 3) / sides + x))
    t.left((360 / sides + 1))
    t.pensize(((x \* sides) / 200))
    t.left(90)

```

##### Code

```
import turtle
import random

\_\_Pen = turtle.Pen()

# 随机螺旋线
t = turtle.Pen()
turtle.bgcolor('black')
colors = ['red','yellow','blue','green','orange','purple','white','gray']
for n in range(50):
    # 选择随机的颜色
    t.pencolor(random.choice(colors))
    # 选择随机的大小（改改看看效果吧）
    size = random.randint(10, 40)
    # 在屏幕上选择随机坐标
    x = random.randint((-300), 300)
    y = random.randint((-300), 300)
    t.penup()
    t.goto(x, y)
    t.pendown()
    for m in range(size):
        t.forward((m \* 2))
        # 可以试试可以更改角度看看哦
        t.left(91)

```

##### Code

```
import turtle

t = turtle.Pen()
t.speed(0)

def head():
    t.penup()
    t.goto(0, (-100))
    t.pendown()
    t.begin\_fill()
    t.fillcolor('gold')
    t.circle(100)
    t.end\_fill()
    t.penup()

def glasses():
    #左镜框
    t.penup()
    t.goto(20,50)
    t.pencolor('brown')
    t.pensize(10)
    t.setheading(0)
    t.pendown()
    t.fillcolor('skyblue')
    t.begin\_fill()
    t.forward(60)
    t.circle(8,90)
    t.forward(30)
    t.circle(8,90)
    t.forward(60)
    t.circle(8,90)
    t.forward(30)
    t.circle(8,90)
    t.end\_fill()
    # 右镜框
    t.penup()
    t.goto(-20,50)
    t.setheading(180)
    t.pendown()
    t.begin\_fill()
    t.forward(60)
    t.circle(-8,90)
    t.forward(30)
    t.circle(-8,90)
    t.forward(60)
    t.circle(-8,90)
    t.forward(30)
    t.circle(-8,90)
    t.end\_fill()
    # 眼镜连接
    t.penup()
    t.goto(-6,70)
    t.setheading(0)
    t.pensize(20)
    t.pendown()
    t.forward(13)
    # 左镜片光泽
    t.penup()
    t.goto(50,65)
    t.setheading(45)
    t.pensize(8)
    t.pencolor('white')
    t.pendown()
    t.forward(25)
    t.penup()
    t.goto(70,65)
    t.pendown()
    t.forward(12)
    # 右镜片光泽
    t.penup()
    t.goto(-50,65)
    t.setheading(45)
    t.pensize(8)
    t.pencolor('white')
    t.pendown()
    t.forward(25)
    t.penup()
    t.goto(-30,65)
    t.pendown()
    t.forward(12)

def face():
    #右眼睛
    t.pencolor('black')
    t.pensize(5)
    t.penup()
    t.goto(55,15)
    t.pendown()
    t.setheading(110)
    t.circle(20,140)
    t.penup()
    #左眼睛
    t.goto(-55,15)
    t.pendown()
    t.setheading(70)
    t.circle(-20,140)
    t.penup()
    #嘴巴(外)
    t.goto(-15,-10)
    t.pensize(1)
    t.pencolor('coral')
    t.fillcolor('coral')
    t.setheading(-90)
    t.pendown()
    t.begin\_fill()
    t.circle(15,180)
    for i in range(10):
        t.forward(3)
        t.left(7)
    t.left(20)
    t.backward(2)
    t.left(20)
    for i in range(10):
        t.forward(3)
        t.left(7)
    t.end\_fill()
    #嘴巴(里)
    t.penup()
    t.goto(12,-10)
    t.setheading(120)
    t.pencolor('darkred')
    t.fillcolor('darkred')
    t.begin\_fill()
    t.circle(14,120)
    t.setheading(-60)
    t.circle(14,120)
    t.end\_fill()

def hands():
    #左手
    t.penup()
    t.goto(100,0)
    t.pensize(1)
    t.pencolor('black')
    t.setheading(-10)
    t.pendown()
    t.fillcolor('gold')
    t.begin\_fill()
    for i in range(7):
        t.forward(9)
        t.right(6)
    for i in range(19):
        t.forward(1)
        t.right(6)
    for i in range(7):
        t.forward(9)
        t.right(5)
    t.end\_fill()
    #右手
    t.penup()
    t.goto(-100,0)
    t.setheading(190)
    t.pendown()
    t.fillcolor('gold')
    t.begin\_fill()
    for i in range(7):
        t.forward(9)
        t.left(6)
    for i in range(19):
        t.forward(1)
        t.left(6)
    for i in range(7):
        t.forward(9)
        t.left(5)
    t.end\_fill()

def hat():
    #蓝色部分
    t.penup()
    t.goto(50,96)
    t.pencolor('deepskyblue')
    t.fillcolor('deepskyblue')
    t.pensize(1)
    t.pendown()
    t.begin\_fill()
    t.setheading(90)
    t.circle(10,90)
    t.forward(10)
    t.setheading(90)
    t.forward(10)
    t.circle(5,90)
    t.forward(50)
    t.circle(5,90)
    t.forward(10)
    t.setheading(180)
    t.forward(10)
    t.circle(10,90)
    t.setheading(0)
    t.forward(100)
    t.end\_fill()
    #棕色部分
    t.penup()
    t.goto(20,122)
    t.pencolor('brown')
    t.fillcolor('brown')
    t.setheading(90)
    t.pendown()
    t.begin\_fill()
    t.forward(15)
    t.circle(5,90)
    t.forward(30)
    t.circle(5,90)
    t.forward(15)
    t.end\_fill()

def draw():
    head()
    face()
    hat()
    glasses()
    hands()
    turtle.done()

#开始进入Python的世界
draw()

```

##### Code

```
import turtle

#分形雪花
t = turtle.Pen()

        t.forward(size)
            t.left(angel)
            #函数调用自身，这种调用方式叫做递归
            #递归时参数变小，画的是更小的雪花
            snow(size / 3, n - 1)

def draw():
    t.speed(0)
    t.penup()
    t.goto((-200), 100)
    t.pendown()
    t.pensize(2)
    level = 3
    snow(400, level)
    t.right(120)
    snow(400, level)
    t.right(120)
    snow(400, level)
    turtle.done()

#开始进入Python的世界
draw()

```

##### Code

```
import random
import turtle

\_\_Pen = turtle.Pen()

# 参数分别是树枝长度、画笔

                t.pencolor('snow')
            else :
                t.pencolor('lightcoral')
            t.pensize((branchLen / 3))
                t.pencolor('snow')
            else :
                t.pencolor('lightcoral')
            t.pensize((branchLen / 2))
        else :
            t.pencolor('sienna')
            t.pensize((branchLen / 10))
        t.forward(branchLen)
        a = (1.5 \* (random.random()))
        t.right((20 \* a))
        b = (1.5 \* (random.random()))
        # 在tree函数内部调自己，这种方式叫递归调用
        # 递归可以大幅提升编程效率
        tree(branchLen - 10 \* b, t)
        t.left((40 \* a))
        tree(branchLen - 10 \* b, t)
        t.right((20 \* a))
        t.penup()
        t.backward(branchLen)
        t.pendown()

# 绘制树下花瓣，参数分别是画板数、画笔

        a = (200 - 400 \* (random.random()))
        b = (10 - 20 \* (random.random()))
        t.penup()
        t.forward(b)
        t.left(90)
        t.forward(a)
        t.pendown()
        t.pencolor('lightcoral')
        t.circle(1)
        t.penup()
        t.backward(a)
        t.right(90)
        t.backward(b)

def main():
    t = turtle.Pen()
    \_\_Pen.hideturtle()
    t.speed(0)
    turtle.bgcolor('wheat')
    t.left(90)
    t.penup()
    t.backward(150)
    t.pendown()
    t.pencolor('sienna')
    tree(60, t)
    petal(100, t)
    turtle.done()

main()

```