猫史档案馆


【Python作品分享】家灵cAZd 建议后的作品【作业帖】

用户:Kimi_hjhKimi_hjh查看:70 回复:42 评论:70 创建时间:2022-02-23T19:14:11


【作品展示】

center_image

 

【作品介绍】

通过家灵cAZd建议后改动的作品

 

【作品源代码】

import time
import turtle
import random

__Pen = turtle.Pen()


time.sleep(1)

a = 0

mypen = turtle.Pen()
length = 200
mypen.pensize(40)
mypen.pencolor('lightsalmon')
mypen.forward(length)
mypen.pensize(30)
mypen.pencolor('white')
mypen.backward(length)
# 出数总和
total = 0
while (total < 20):
    # 玩家输入整数
    myscreen = turtle.Screen()
    try:
        player_num = int(turtle.textinput('谁先达到20!', '请输入1~3范围的整数:'))
        if (player_num > 3):
            print('请输入1~3范围的整数!')
        else:
            print('玩家出的信息', player_num)
            mypen.pencolor('mistyrose')
            mypen.forward((player_num * 10))
            total = (total + player_num)
            print("总和:", total)
            if (total == 20):
                print('玩家赢了!')
            elif (total > 20):
                print('玩家输了!')
            else:
                # 电脑随机出整数
                com_num = random.randint(1, 3)
                print('电脑出的数', com_num)
                mypen.pencolor('salmon')
                mypen.forward((com_num * 10))
                total = (total + com_num)
                print('总和:', total)
            if (total == 20):
                print('电脑赢了!')
            elif (total > 20):
                print('电脑输了!')
            else:
                print('-----------------')
    except ValueError:
        print('请输入整数!')
mypen.hideturtle()
turtle.done()

 

【提示】

部分含有Python第三方库相关内容的作品,在海龟编辑器网页端无法运行哦!如遇到这种情况,可以打开下面的链接,下载海龟编辑器客户端:

https://python.codemao.cn


回复

上一页1 页 / 共 2下一页
家灵cAZd家灵cAZd

BMI计算器做的还挺好,不需要修改

点赞0


评论


家灵cAZd家灵cAZd

你看一下我做的一些小作品,有意见可提出

import random

y = 0
h = 0
aaa = 0
def ab():
    print('a=?')
    print('b=?')
    c = int(input())
    d = int(input())
    if (a == c and b == d):
        print('yes')
        print('很好,继续努力')
        print()
        y += 1
    else:
        print('no')
        print('错了,继续努力')
        print('a是', a)
        print('b是', b)
        print()

while aaa != 'no':
    mz = str(input('请问你的名字是'))
    print(mz, '我们来玩一个游戏吧(简单)')
    try:
        print('请选择题数')
        h = int(input())
        e = str(input('是否进行;‘yes’或‘no’'))
        if (e == 'yes'):
            for __count in range(h):
                a = random.randint(1, 100)
                b = random.randint(1, 100)
                print('前面是100-a')
                print('后面是100-b')
                print((100 - a))
                print((100 - b))
                ab()
        else:
            e = str(input('是否开始;‘yes’或‘no’'))
            if (e == 'yes'):
                print('普通')
                for __count in range(h):
                    z = random.randint(1, 100)
                    x = random.randint(1, 100)
                    a = random.randint(1, 50)
                    b = random.randint(1, 50)
                    print('前面是', z, '*a')
                    print('后面是', x, '*b')
                    print((z * a))
                    print((x * b))
                    ab()
            else:
                e = str(input('是否退出;‘yes’或‘no’'))
            if (e == 'no'):
                print('困难')
                for __count in range(h):
                    z = random.randint(100, 5000)
                    x = random.randint(100, 5000)
                    r = random.randint(1, 100)
                    g = random.randint(1, 100)
                    a = random.randint(50, 100)
                    b = random.randint(50, 100)
                    print('前面是', z, '*a*', r)
                    print('后面是', x, '*b*', g)
                    print(((z * a) * r))
                    print(((x * b) * g))
                    ab()
                    print('一共有', h, '题', '你的答对了', y, '题')
                    aaa = str(input('是否重来'))
    except:
        print('请输入数字')
        aaa = str(input('是否重来'))

点赞1


评论


家灵cAZd家灵cAZd

import time
import random


b = 0
d = 0
play = [0, 1, 2, 3, 4, 5, 6, 7, 8]
name = str(input('你叫什么名字?'))
print('你好', name)
a = str(input('要下井字棋吗?no 或 点Enter'))
if (a == 'no'):
    print('那你走吧')
else:
    print('开始吧')
    print('\n0', '1', '2', '\n3', '4', '5', '\n6', '7', '8\n')
    print('这是位置对应键盘数字')
    while (d != 1):
        a1n = int(input('你这手下哪?'))
        if (a1n > 8 or a1n < 0):
            print('这里不能下')
        else:
            if (play[a1n] != 'O'):
                if (play[a1n] != 'X'):
                    play[a1n] = 'O'
                    print('\n', play[0], play[1], play[2], '\n', play[3], play[4], play[5], '\n', play[6], play[7], play[8])
                else:
                    print('这里已经有棋子了')
                    continue
            else:
                print('这里已经有棋子了')
                continue
            if play[0] == play[1] == play[2] == 'O':
                print('你赢了')
                d = 1
            elif play[0] == play[1] == play[2] == 'X':
                print('你输了')
                d = 1
            elif play[3] == play[4] == play[5] == 'O':
                print('你赢了')
                d = 1
            elif play[3] == play[4] == play[5] == 'X':
                print('你输了')
                d = 1
            elif play[6] == play[7] == play[8] == 'O':
                print('你赢了')
                d = 1
            elif play[6] == play[7] == play[8] == 'X':
                print('你输了')
                d = 1
            elif play[0] == play[3] == play[6] == 'O':
                print('你赢了')
                d = 1
            elif play[0] == play[3] == play[6] == 'X':
                print('你输了')
                d = 1
            elif play[1] == play[4] == play[7] == 'O':
                print('你赢了')
                d = 1
            elif play[1] == play[4] == play[7] == 'X':
                print('你输了')
                d = 1
            elif play[2] == play[5] == play[8] == 'O':
                print('你赢了')
                d = 1
            elif play[2] == play[5] == play[8] == 'X':
                print('你输了')
                d = 1
            elif play[0] == play[4] == play[8] == 'O':
                print('你赢了')
                d = 1
            elif play[0] == play[4] == play[8] == 'X':
                print('你输了')
                d = 1
            elif play[2] == play[4] == play[6] == 'O':
                print('你赢了')
                d = 1
            elif play[2] == play[4] == play[6] == 'X':
                print('你输了')
                d = 1
            else:
                if (play[0] != 0 and play[1] != 1 and play[2] != 2 and play[3] != 3 and play[4] != 4 and play[5] != 5 and play[6] != 6 and play[7] != 7 and play[8] != 8):
                    print('打平了')
                    d = 1
            if (d != 1):
                print('到我了')
                time.sleep(2)
                for __count in range(100000):
                    c = random.randint(0, 8)
                    if (play[c] != 'X'):
                        if (play[c] != 'O'):
                            break
                play[c] = 'X'
                print('\n', play[0], play[1], play[2], '\n', play[3], play[4], play[5], '\n', play[6], play[7], play[8])

点赞1


评论


家灵cAZd家灵cAZd

import os
import webbrowser
from pyecharts import Bar, Line, Pie


def A(a):
    b = str(input('是否继续(yes;no)'))
    while b == 'yes':
        try:
            a1m = int(input('项数选择数量'))
            a2m = []*a1m
            a3m = []*a1m
            a4m = []*a1m
            if a == 'a' or 'b':
                print('注意:饼状图没有复式')
                an1 = str(input('是否选择复式(yes不选可直接点Enter)'))
            if an1 == 'yes':
                for i in range(a1m):
                    a1 = str(input('项目'))
                    a2 = int(input('数目一'))
                    a4 = int(input('数目二'))
                    a2m.append(a1)
                    a3m.append(a2)
                    a4m.append(a4)
            else:
                for i in range(a1m):
                    a1 = input('项目')
                    a2 = int(input('数目'))
                    a2m.append(a1)
                    a3m.append(a2)
            if a == 'b':
                a3 = Bar(str(input('主题')))
            if a == 'a':
                a3 = Line(str(input('主题')))
            if a == 'c':
                a3 = Pie(str(input('主题')))

            if an1 == 'yes':
                if a == 'b':
                    a3.add(str(input('项目一名字')), a2m, a3m, is_convert=True)
                    a3.add(str(input('项目二名字')), a2m, a4m,is_convert=True)
                if a == 'c':
                    a3.add(str(input('项目名字')), a2m, a3m, is_label_show=True, gend_orient="horizontal", legend_pos="center", label_formatter="{c}", radius=[60, 75])
                if a == 'a':
                    a3.add(str(input('项目一名字')), a2m, a3m,mark_point=["max", "min", "average"])
                    a3.add(str(input('项目二名字')), a2m, a4m,mark_point=["max", "min", "average"])

            else:
                if a == 'b':
                    a3.add(str(input('项目名字')), a2m, a3m, is_convert=True)
                if a == 'c':
                    a3.add(str(input('项目名字')), a2m, a3m, is_label_show=True,gend_orient="horizontal", legend_pos="center", label_formatter="{c}", radius=[60, 75])
                if a == 'a':
                    a3.add(str(input('项目名字')), a2m, a3m,mark_point=["max", "min", "average"])
            a3.render()
            webbrowser.open('file://' + os.path.realpath('render.html'))
            b = str(input('是否继续(yes;no)'))
            b1 = str(input('是否修改统计图(yes;no)'))
            if b1 == 'yes':
                a = str(input('选择统计图(折线图a,柱状图b,饼状图c)'))
        except:
            print('请认真填写')

if __name__ == '__main__':
    print('项目统计器')
    y = str(input('选择统计图(折线图a,柱状图b,饼状图c)'))
    if y != ('a' or 'b' or 'c'):
        print('没有此项,默认为饼状图c')
        A('c')
    A(y)

点赞1


评论


家灵cAZd家灵cAZd

相互学习一下

点赞1


评论


Kimi_hjhKimi_hjh

我试了一下你的这个,我玩完后,显示的是“玩家赢了”同时和“电脑赢了”有点问题imgsrc="http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/e9/sk_thumb.gif"alt="emotion_思考"imgsrc="http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/e9/sk_thumb.gif"alt="emotion_思考"imgsrc="http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/e9/sk_thumb.gif"alt="emotion_思考" importtime importturtle importrandom __Pen=turtle.Pen() time.sleep(1) a=0 mypen=turtle.Pen() length=200 mypen.pensize(40) mypen.pencolor('lightsalmon') mypen.forward(length) mypen.pensize(30) mypen.pencolor('white') mypen.backward(length) #出数总和 total=0 while(total<20): #玩家输入整数 myscreen=turtle.Screen() try: player_num=int(turtle.textinput('谁先达到20!','请输入1~3范围的整数:')) if(player_num>3): print('请输入1~3范围的整数!') else: print('玩家出的信息',player_num) mypen.pencolor('mistyrose') mypen.forward((player_num*10)) total=(total+player_num) print("总和:",total) if(total==20): print('玩家赢了!') elif(total>20): print('玩家输了!') else: #电脑随机出整数 com_num=random.randint(1,3) print('电脑出的数',com_num) mypen.pencolor('salmon') mypen.forward((com_num*10)) total=(total+com_num) print('总和:',total) if(total==20): print('电脑赢了!') elif(total>20): print('电脑输了!') else: print('-----------------') exceptValueError: print('请输入整数!') mypen.hideturtle() turtle.done()

点赞1


评论


Kimi_hjhKimi_hjh

            elif play[0] == play[1] == play[2] == 'X':
                print('你输了')
                d = 1
            elif play[3] == play[4] == play[5] == 'O':
                print('你赢了')
                d = 1
            elif play[3] == play[4] == play[5] == 'X':
                print('你输了')
                d = 1
            elif play[6] == play[7] == play[8] == 'O':
                print('你赢了')
                d = 1
            elif play[6] == play[7] == play[8] == 'X':
                print('你输了')
                d = 1
            elif play[0] == play[3] == play[6] == 'O':
                print('你赢了')
                d = 1
            elif play[0] == play[3] == play[6] == 'X':
                print('你输了')
                d = 1
            elif play[1] == play[4] == play[7] == 'O':
                print('你赢了')
                d = 1
            elif play[1] == play[4] == play[7] == 'X':
                print('你输了')
                d = 1
            elif play[2] == play[5] == play[8] == 'O':
                print('你赢了')
                d = 1
            elif play[2] == play[5] == play[8] == 'X':
                print('你输了')
                d = 1
            elif play[0] == play[4] == play[8] == 'O':
                print('你赢了')
                d = 1
            elif play[0] == play[4] == play[8] == 'X':
                print('你输了')
                d = 1
            elif play[2] == play[4] == play[6] == 'O':
                print('你赢了')
                d = 1
            elif play[2] == play[4] == play[6] == 'X':
                print('你输了')
                d = 1

我觉得这里可以简化

点赞1


评论


家灵cAZd家灵cAZd

加了亿些内容

点赞1


评论


家灵cAZd家灵cAZd

改好了

import turtle
import time
import random

__Pen = turtle.Pen()


__Pen.hideturtle()

turtle.bgcolor('skyblue')

time.sleep(1)

a = 0

new_pen = turtle.Pen()
mypen = turtle.Pen()
mypen.hideturtle()
new_pen.hideturtle()
new_pen.pencolor('midnightblue')

new_pen.penup()
new_pen.goto((-200), (-200))
new_pen.pendown()
mypen.penup()
mypen.goto((-200), 0)
mypen.pendown()
__Pen.penup()
__Pen.pensize(200)
__Pen.goto((-50), 200)
__Pen.write('谁先达到20!', font = ('Arial', 20, 'bold'))
__Pen.goto(0, 100)
__Pen.pendown()
length = 400
mypen.pensize(50)
mypen.pencolor('lightsalmon')
mypen.forward(length)
mypen.pensize(40)
mypen.pencolor('white')
mypen.backward(length)
# 出数总和
total = 0
# 玩家输入整数
myscreen = turtle.Screen()
while (total < 20):
    try:
        player_num = int(turtle.textinput('谁先达到20!', '请输入1~3范围的整数:'))
        if (player_num > 3):
            new_pen.write('请输入\n1~3范\n围的整数!', font = ('Arial', 20, 'bold'))
            time.sleep(1)
            new_pen.pencolor('skyblue')
            new_pen.dot(250)
            new_pen.pencolor('midnightblue')
        else:
            new_pen.write('玩家出\n的信息', font = ('Arial', 20, 'bold'))
            new_pen.penup()
            new_pen.forward((150))
            new_pen.pendown()
            new_pen.write(player_num, font = ('Arial', 20, 'bold'))
            new_pen.forward((-150))
            time.sleep(1)
            new_pen.pencolor('skyblue')
            new_pen.dot(350)
            new_pen.pencolor('midnightblue')
            mypen.pencolor('mistyrose')
            mypen.forward((player_num * 20))
            total = (total + player_num)
            __Pen.write(total, font = ('Arial', 20, 'bold'))
            __Pen.pencolor('skyblue')
            time.sleep(1)
            __Pen.dot(100)
            __Pen.pencolor('black')
            if (total == 20):
                __Pen.pencolor('yellow')
                __Pen.write('玩家赢了!', font = ('Arial', 20, 'bold'))
            elif (total > 20):
                __Pen.pencolor('red')
                __Pen.write('玩家输了!', font = ('Arial', 20, 'bold'))
            else:
                # 电脑随机出整数
                com_num = random.randint(1, 3)
                new_pen.write('电脑出\n的信息', font=('Arial', 20, 'bold'))
                __Pen.right(40)
                new_pen.penup()
                new_pen.forward((150))
                new_pen.pendown()
                new_pen.write(com_num, font=('Arial', 20, 'bold'))
                new_pen.forward((-150))
                time.sleep(1)
                new_pen.pencolor('skyblue')
                new_pen.dot(350)
                new_pen.pencolor('midnightblue')
                mypen.pencolor('salmon')
                mypen.forward((com_num * 20))
                total = (total + com_num)
                __Pen.write(total, font = ('Arial', 20, 'bold'))
                __Pen.pencolor('skyblue')
                time.sleep(1)
                __Pen.dot(100)
                __Pen.pencolor('black')
                if (total == 20):
                    __Pen.pencolor('red')
                    __Pen.write('电脑赢了!', font = ('Arial', 20, 'bold'))
                elif (total > 20):
                    __Pen.pencolor('yellow')
                    __Pen.write('电脑输了!', font = ('Arial', 20, 'bold'))
                else:
                    pass
    except ValueError:
        new_pen.write('请输入\n整数!', font = ('Arial', 20, 'bold'))
        time.sleep(1)
        new_pen.pencolor('skyblue')
        new_pen.dot(250)
        new_pen.pencolor('midnightblue')
mypen.hideturtle()
turtle.done()

点赞1


评论


家灵cAZd家灵cAZd

你不把改好的发出去吗?我觉得你的挺有创意的。

点赞1


评论


Kimi_hjhKimi_hjh

import turtle
import random

myscreen = turtle.Screen()
mypen = turtle.Pen()
mypen.hideturtle()
mypen.penup()
mypen.goto(-112.5 , 0)
mypen.pendown()
count = 0
p_win = 0
c_win = 0
flag = False
while count < 10 :
player = int(myscreen.textinput("剪刀1-石头2-布3","请输入猜拳对应的数字:"))
computer = random.randint(1 , 3)
if player == 1:
print("玩家出了,剪刀")
elif player == 2:
print("玩家出了,石头")
elif player == 3:
print("玩家出了,布")
else :
print("玩家输入数字超出范围")
flag = True

if computer == 1:
print("计算机出了,剪刀")
elif computer == 2:
print("计算机出了,石头")
else:
print("计算机出了,布")

#判断胜负
if player == computer or flag:
print("此局平局或废局")
mypen.pencolor("gray")
mypen.dot(20)
flag = False
elif player == 1 and computer == 3 or player == 2 and computer == 1 or player == 3 and computer == 2:
print("此局玩家胜")
p_win = p_win + 1
mypen.pencolor("darkgreen")
mypen.dot(20)
elif player == 3 and computer == 1 or player == 1 and computer == 2 or player == 2 and computer == 3:
print("此局计算机胜")
c_win = c_win + 1
mypen.pencolor("red3")
mypen.dot(20)
mypen.penup()
mypen.forward(25)
mypen.pendown()
count = count + 1
print("--------------")

print("玩家的胜局数为:" , p_win)
print("计算机的胜局数为:", c_win)

turtle.done()

点赞0


评论


伴雪纷飞伴雪纷飞

又是个积木党(😓

点赞0


评论


家灵cAZd家灵cAZd

imgsrc="https://static.codemao.cn/emoji/codemao/%E7%BC%96%E7%A8%8B%E7%8C%AB_%E5%8A%A0%E6%B2%B9.gif"alt="emotion_编程猫_加油"

点赞0


评论


家灵cAZd家灵cAZd

好久没回来了,最近我在肝一个作品,所以这么久没回来。

点赞0


评论


家灵cAZd家灵cAZd

作品太长发不出来imgsrc="https://static.codemao.cn/emoji/codemao/%E7%BC%96%E7%A8%8B%E7%8C%AB_%E7%BF%BB%E7%99%BD%E7%9C%BC.gif"alt="emotion_编程猫_翻白眼"

点赞0


评论


家灵cAZd家灵cAZd

from arcade import *
from PIL import Image

SCREEN_WIDTH = 600
SCREEN_HEIGHT = 400
SCREEN_TITLE = 'Rocket Composition'
W = SCREEN_WIDTH // 2
H = SCREEN_HEIGHT // 2


class Background(Sprite):
    def __init__(self, image):
        super().__init__(image)
        self.center_x = W
        self.center_y = H


class RocketComposition(arcade.Window):
    def __init__(self, width, height, title):
        super().__init__(width, height, title)
        self.setup()
        self.process = 0
        self.number_of_clicks = 0
        self.flame_state = True

    def mydraw(self):
        draw_rectangle_filled(W, H+114, 50, 90, color.WHITE)
        draw_circle_outline(W, H+114, 10, color.COBALT, 7)
        draw_triangle_filled(W+25, H+160, W-25, H+160, W, H+200, color.RED)
        draw_rectangle_filled(W, H+12, 30, 110, color.WHITE)
        draw_rectangle_filled(W, H-90, 50, 90, color.WHITE)
        draw_rectangle_filled(W-41, H-90, 25, 90, color.BLUE)
        draw_rectangle_filled(W+41, H-90, 25, 90, color.BLUE)
        if self.flame_state:
            draw_rectangle_filled(W-41, H-90-50-50, 25, 80, color.ORANGE)
            draw_rectangle_filled(W, H-90-50-60, 50, 100, color.ORANGE)
            draw_rectangle_filled(W+41, H-90-50-50, 25, 80, color.ORANGE)
        else:
            draw_rectangle_filled(W-41, H-90-50-40, 25, 80, color.ORANGE)
            draw_rectangle_filled(W, H-90-50-50, 50, 100, color.ORANGE)
            draw_rectangle_filled(W+41, H-90-50-40, 25, 80, color.ORANGE)

    def change_flame(self):
        self.flame_state = not self.flame_state

    def setup(self):
        set_background_color(color.SILVER)
        self.teacher = Background('素材/老师.png')
        self.teacher.center_x = 100
        self.teacher.center_y = H - 150
        self.teacher.append_texture(load_texture(
            '素材/老师.png', mirrored=True, scale=1))
        background = ['素材/初始背景.png', '素材/万户.png', '素材/星空.png', '素材/水星.png',
                      '素材/金星.png', '素材/地球.png', '素材/火星.png', '素材/木星.png', '素材/土星.png', '素材/天王星.png']
        for i in background:
            image = Image.open(i).resize((SCREEN_WIDTH, SCREEN_HEIGHT)).save(i)
        self.background1 = Background('素材/初始背景.png')
        self.background2 = Background('素材/万户.png')
        self.background3 = Background('素材/星空.png')
        self.background4 = Background('素材/水星.png')
        self.background5 = Background('素材/金星.png')
        self.background6 = Background('素材/地球.png')
        self.background7 = Background('素材/火星.png')
        self.background8 = Background('素材/木星.png')
        self.background9 = Background('素材/土星.png')
        self.background10 = Background('素材/天王星.png')
        self.background11 = Background('素材/海王星.png')
        self.background12 = Background('素材/再见.png')

    def on_draw(self):
        if self.process == 5:
            self.background3.draw()
            if self.number_of_clicks == 26:
                draw_text('太阳系有七大行星,它们分\n别是水星、金星、地球、火\n星、木星、土星、天王星。', W, H,
                          color.RED, 20, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 27:
                draw_text('而我们本次要按它们离太阳\n的远近来分别介绍。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 28:
                self.process = 6
        if self.process == 6:
            self.background4.draw()
            if self.number_of_clicks == 29:
                draw_text('这个是水星。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 30:
                draw_text('水星是太阳系的八大行星中最\n小且最靠近太阳的行星。轨道\n周期是87.9691天,', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 31:
                draw_text('116天左右与地球会合一次,\n公转速度远远超过太阳系的其\n它行星。水星是表面昼夜温\n差最大的行星,', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 32:
                draw_text('大气层极为稀薄无法有效保存\n热量,白天时赤道地区温度可\n达432°C,夜间可降至', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 33:
                draw_text('-172°C。水星的轴倾斜是太阳\n系所有行星中最小的(大约1\n/30度),但有最大的轨道偏', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 34:
                draw_text('心率。水星在远日点的距离大约\n是在近日点的1.5倍。水星\n表面遍布环形山,与月球和\n其他', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')

点赞0


评论


家灵cAZd家灵cAZd

            if self.number_of_clicks == 35:
                draw_text('卫喵似,其地质在数十亿年来\n都处于非活动状态。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 36:
                self.process = 7
        if self.process == 7:
            self.background5.draw()
            if self.number_of_clicks == 37:
                draw_text('这个是金星。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 38:
                draw_text('金星在夜空中的亮度仅次于\n月球,是第二亮的天体,视\n星等可以达到-4.7等,足以', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 39:
                draw_text('在地面照射出影子。由于金\n星是在地球内侧的内行星,\n它永远不会远离太阳运行:', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 40:
                draw_text('它的离日度最大值为47.8°。\n金星是一颗与地球相似的类\n地行星,常被称为地球的姊', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 41:
                draw_text('妹星。它有着四颗类地行星\n中最浓厚的大气层,其中超\n过96 % 都是二氧化碳,金星表', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 42:
                draw_text('面的大气压力是地球的92倍\n。其表面的平均温度高达73\n5 K(462 °C),是太阳系\n中最热的行星,', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 43:
                draw_text('比最靠近太阳的水星还要热。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 44:
                self.process = 8
        if self.process == 8:
            self.background6.draw()
            if self.number_of_clicks == 45:
                draw_text('这是我们熟知的地球。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 46:
                draw_text('是距离太阳的第三颗行星,\n也是目前已知的唯一孕育和\n支持生命的天体。地球表面\n的大', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 47:
                draw_text('约 29.2 % 是由大陆和岛屿组成\n的陆地。剩余的 70.8 % 被水覆盖,\n大部分被海洋、', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 48:
                draw_text('海湾和其他咸水体覆盖,也\n被湖泊、河流和其他淡水覆\n盖,它们共同构成了水圈。\n地球', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 49:
                draw_text('的大部分极地地区都被冰覆\n盖。地球外层分为几个刚性\n构造板块,它们在数百万年', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 50:
                draw_text('的时间里在地表迁移,而其\n内部仍然保持活跃,有一个\n固体铁内核、', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 51:
                draw_text('一个产生地球磁场的液体外\n核,以及一个驱动板块构造\n的对流地幔。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 52:
                self.process = 9
        if self.process == 9:
            self.background7.draw()
            if self.number_of_clicks == 53:
                draw_text('这是火星。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 54:
                draw_text('火星大气以二氧化碳为主(95.3 %),\n既稀薄又寒冷,遍布撞击坑、\n峡谷、沙丘和砾石,', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 55:
                draw_text('没有稳定的液态水。南半球\n是古老、充满撞击坑的高地,\n北半球则是较年轻的低地平\n原。火', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 56:
                draw_text('星上有太阳系已知最大的山—\n奥林帕斯山和最大的峡谷—\n水手号峡谷。火星有两个天\n然卫星:火卫一和火卫二,', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 57:
                draw_text('形状不规则,可能是捕获的\n小行星。根据观测的证据,\n在火星观察到类似地下水涌\n出的现象,南极冰冠有', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 58:
                draw_text('部分退缩,雷达数据显示两\n极和中纬度地表下存在大量\n的水冰。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 59:
                self.process = 10
        if self.process == 10:
            self.background8.draw()
            if self.number_of_clicks == 60:
                draw_text('这个是木星。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 61:
                draw_text('木星是颗巨行星,质量是太\n阳的千分之一,但却是太阳\n系其他行星质量总和的2.5倍。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 62:
                draw_text('木星的主要成分是氢,但只\n占十分之一分子数量的氦,\n却占了总质量的四分之一;', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 63:
                draw_text('它可能有喵核心和重元素\n,但没有可以明确界定的固\n体表面。由于快速地自转,\n木星的外观呈现', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 喵:
                draw_text('扁球体。大气层依纬度成不\n同的区与带,在彼此的交界\n处有湍流和风暴作用着。最\n显著的例子就是大', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 65:
                draw_text('红斑,这是17世纪第一次被\n望远镜见到后就未曾停歇过\n的巨大风暴。环绕着木星的\n还有微弱的行星环', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 66:
                draw_text('和强大的磁层,包括4颗161\n0年发现的伽利略卫星,至2\n019年12月已经发现79颗卫\n星。木卫三是其中', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')

点赞0


评论


家灵cAZd家灵cAZd

            if self.number_of_clicks == 67:
                draw_text('最大的一颗,其直径大于行\n星中的水星。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 68:
                self.process = 11
        if self.process == 11:
            self.background9.draw()
            if self.number_of_clicks == 69:
                draw_text('这是土星。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 70:
                draw_text('土星是气态巨行星,主要由氢\n组成,还有少量的氦与少量\n元素,内部的核心包括喵\n和冰,喵', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 71:
                draw_text('由数层金属氢和气体包覆着。\n最外层的大气层在外观上通\n常情况下都是平淡的,虽然\n有时会有长', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 72:
                draw_text('时间存在的特殊出现。土星的\n风速高达1800千米/时,风\n速明显比木星快。土星的行星\n磁场强度介于地球和', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 73:
                draw_text('更强的木星之间。土星有一个\n显著的行星环系统,主要的\n成分是冰的微粒和较少数的岩\n石残骸以及', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 74:
                draw_text('尘土。2019年确认的土星的卫\n星有82颗,是八大行星中最\n多的一个。其中,土卫六是土\n星系统中最大和太阳', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 75:
                draw_text('系中第二大的卫星,仅次于木\n卫三,比行星中的水星还要\n大,并且土卫六是太阳系仅有\n的拥有明显大气层的卫', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 76:
                draw_text('星。土星自转一周等于10小时\n33分38秒,大约是地球的半\n天时长。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 77:
                self.process = 12
        if self.process == 12:
            self.background10.draw()
            if self.number_of_clicks == 78:
                draw_text('这个是天王星', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 79:
                draw_text('天王星大气的主要成分是氢、\n氦、甲烷和氘。据推测,其\n内部可能含有丰富的重元素。\n地幔由甲烷和氨的冰组成,\n可能含', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 80:
                draw_text('有水。内核由冰和喵组成。\n天王星是太阳系内大气层最\n冷的行星,最低温度为49K(-224℃)。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 81:
                self.process = 13
        if self.process == 13:
            self.background11.draw()
            if self.number_of_clicks == 82:
                draw_text('这个是海王星', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 83:
                draw_text('海王星的大气层的化学组成\n以氢分子和氦为主。此外,\n海王星大气中还有微量的甲\n烷,这是使行星呈蓝色的原\n因之一。海王星有着强烈', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 84:
                draw_text('的风暴,测量到的风速高达\n2400km/h。海王星云顶温度\n是-218摄氏度(55K),比\n天王星云顶温度稍高。', W, H, color.RED, 20, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 85:
                self.process = 14
        if self.process == 14:
            self.background1.draw()
            self.teacher.draw()
            self.teacher.center_x = 100
            self.teacher.center_y = H-150
            if self.number_of_clicks == 86:
                draw_text('同学们,上面只是\n太阳系的部分知\n识,有兴趣可以自\n己去了解。', self.teacher.center_x+50, self.teacher.center_y+45, color.BLUE, 10, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 87:
                draw_text('同学们,既然了解\n了太阳系,那我\n的课程正式结束了。', self.teacher.center_x+50, self.teacher.center_y+30, color.BLUE, 10, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 88:
                draw_text('或许这个过程很短\n,但了解到了很\n多知识也是很好的。', self.teacher.center_x+50, self.teacher.center_y+30, color.BLUE, 10, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 89:
                draw_text('而现在,已经完成\n了课程那也要说\n再见了,希望以后\n也能继续相见。', self.teacher.center_x+50, self.teacher.center_y+45, color.BLUE, 10, font_name=(
                    'simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 90:
                self.process = 15
        if self.process == 15:
            self.background12.draw()
        if self.process == 3:
            self.change_flame()
            start_render()
        if self.process == 0:
            self.teacher.set_texture(1)
            self.background1.draw()
        if self.process == 4:
            self.teacher.set_texture(1)
            self.background1.draw()
            self.teacher.draw()
            self.teacher.center_x = 100
            self.teacher.center_y = H - 150
            if self.number_of_clicks == 24:
                draw_text('那么大家,既然了\n解了火箭,就让我\n们去了解一下太阳系吧。', self.teacher.center_x + 50, self.teacher.center_y +
                          30, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 25:
                self.process = 5
        if self.process == 3:
            self.mydraw()
            self.teacher.set_texture(0)

点赞0


评论


家灵cAZd家灵cAZd

            self.teacher.center_x = 550
            self.teacher.center_y = H
            self.teacher.draw()
            if self.number_of_clicks == 11:
                draw_text('同学们,这是一个\n三级火箭的基础模\n型。', self.teacher.center_x - 50, self.teacher.center_y + 30,
                          color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 12:
                draw_text('让我们来了解一下\n火箭吧。', self.teacher.center_x - 50, self.teacher.center_y + 15,
                          color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 13:
                draw_text('火箭常用的运载火\n箭按其所用的推进\n剂来分,可', self.teacher.center_x - 50, self.teacher.center_y +
                          30, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 14:
                draw_text('分为固体火箭、液\n体火箭和固液混合\n型火箭三种类型。', self.teacher.center_x - 50, self.teacher.center_y +
                          30, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 15:
                draw_text('像我国的长征三号\n运载火箭是一种三\n级液体火箭。', self.teacher.center_x - 50, self.teacher.center_y +
                          30, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 16:
                draw_text('而我国的长征一号\n运载火箭则是一种\n固液混合型的三级\n火箭。', self.teacher.center_x - 50, self.teacher.center_y +
                          45, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 17:
                draw_text('其第一级、第二级\n是液体火箭,而第\n三级是固体火箭。', self.teacher.center_x - 50, self.teacher.center_y +
                          30, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 18:
                draw_text('再举一个例子,美\n国的“飞马座”运载\n火箭则是一种三级\n固体火箭。', self.teacher.center_x - 50, self.teacher.center_y +
                          45, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 19:
                draw_text('如果按级数来分,\n运载火箭又可分为\n单级火箭、多级火\n箭。', self.teacher.center_x - 50, self.teacher.center_y +
                          45, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 20:
                draw_text('其中多级火箭按级\n与级之间的连接型\n式来分,又可分为\n串联型、', self.teacher.center_x - 50, self.teacher.center_y +
                          45, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 21:
                draw_text('并联型(俗称捆绑\n式)、串并联混合\n型三种类型。', self.teacher.center_x - 50, self.teacher.center_y +
                          30, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 22:
                draw_text('关于火箭的资料还\n有很多,大家有兴\n趣可以自己了解一\n下,我就不一一介\n绍了。', self.teacher.center_x - 50, self.teacher.center_y +
                          60, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 23:
                self.process = 4
        if self.process == 1:
            self.background2.draw()
        if self.process == 0:
            self.teacher.draw()
        if self.process == 2:
            self.background1.draw()
            self.teacher.center_x = 100
            self.teacher.center_y = H - 150
            self.teacher.draw()
            draw_text('那么同学们,既然知\n道了火箭的起源,那\n我们就来了解一下\n火箭吧。', self.teacher.center_x + 50, self.teacher.center_y +
                      45, color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
        if self.number_of_clicks == 10:
            self.process = 3
        if self.number_of_clicks == 0:
            draw_text('哈喽,大家好。我是\n本次科普课程的老师。', self.teacher.center_x + 50, self.teacher.center_y + 30,
                      color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
        if self.number_of_clicks == 1:
            draw_text('本次科普的主角是\n我们的火箭。', self.teacher.center_x + 50, self.teacher.center_y + 30,
                      color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
        if self.number_of_clicks == 2:
            draw_text('想要了解火箭就要\n先了解它的起源。', self.teacher.center_x + 50, self.teacher.center_y + 30,
                      color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
        if self.number_of_clicks == 3 and self.process == 0:
            draw_text('想要了解的话就先\n跟我来。', self.teacher.center_x + 50, self.teacher.center_y + 30,
                      color.BLUE, 10, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.teacher.right != SCREEN_WIDTH:
                self.teacher.center_x += 5
            elif self.teacher.right == SCREEN_WIDTH:
                self.process = 1
        if self.process == 1:
            if self.number_of_clicks == 4:
                draw_text('其实我们中国在古时候就已\n经十分好奇地球外的世界了。', W, H+30, color.RED, 20,
                          font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 5:
                draw_text('但是哪一个时候并没有我们\n这样发达的科技,所以只得\n幻想太空的故事,像《牛\n郎织女》、《嫦娥奔月》都\n是由人们幻想出来的故事。', W, H+60,
                          color.RED, 20, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 6:
                draw_text('而在明朝的时候,有一个叫\n万户的官员,为了实现自己\n的航天梦想,自己制作了\n47支火箭绑在了椅子上/', W, H+45, color.RED,
                          20, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 7:
                draw_text('自己坐在椅子上,双手举着\n大风筝。设想利用火箭的推\n力,飞上天空,然后利用\n风筝平稳着陆。', W, H+45, color.RED,
                          20, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 8:
                draw_text('不幸火箭爆炸,万户也为此\n献出了生命。但也因此人们\n称他为“世界航天第一人”。', W, H+30, color.RED,
                          20, font_name=('simhei', 'PingFang'), anchor_x='center', anchor_y='center')
            if self.number_of_clicks == 9:
                self.process = 2

    def on_key_release(self, symbol, modifiers):
        if (symbol == key.S and self.number_of_clicks < 3)  or (symbol == key.S and self.process != 0):
            self.number_of_clicks += 1


if __name__ == '__main__':
    game = RocketComposition(SCREEN_WIDTH, SCREEN_HEIGHT, SCREEN_TITLE)
    run()

点赞0


评论


家灵cAZd家灵cAZd

分四段发给你

点赞0


评论


家灵cAZd家灵cAZd

center_imagecenter_imagecenter_imagecenter_imagecenter_imagecenter_imagecenter_imagecenter_imagecenter_imagecenter_imagecenter_imagecenter_imagecenter_image

点赞0


评论


家灵cAZd家灵cAZd

这是素材,要把他们放在同一个文件夹,其中素材又用一个文件夹。像这样center_image

点赞0


评论


Kimi_hjhKimi_hjh

是这样吗?

点赞0


评论


Kimi_hjhKimi_hjh

center_image

点赞0


评论


Kimi_hjhKimi_hjh

center_image

点赞0


评论


家灵cAZd家灵cAZd

e....看样子乱码了。

点赞0


评论


家灵cAZd家灵cAZd

我用的是我妈的Q。

点赞0


评论


家灵cAZd家灵cAZd

应该没办法

点赞0


评论


家灵cAZd家灵cAZd

这是它们的名,你修改一下。

点赞0


评论


家灵cAZd家灵cAZd

center_image

点赞0


评论