三个好玩的python代码

前言

最近无聊去哔站上面看了一些关于python代码的视频,发现python代码可以做出来一些好玩的东西,所以我学着做了几个代码,感兴趣的可以看看~~

一、代码一

import turtle
import random

# 设置画笔属性
turtle.speed(0)
turtle.bgcolor("sky blue")
turtle.colormode(255)

# 定义绘制圆形的函数
def draw_circle(x, y, radius, color):
    turtle.penup()
    turtle.goto(x, y - radius)
    turtle.pendown()
    turtle.color(color)
    turtle.begin_fill()
    turtle.circle(radius)
    turtle.end_fill()

# 绘制云朵
def draw_cloud(x, y):
    turtle.penup()
    turtle.goto(x, y)
    turtle.pendown()
    for i in range(3):
        draw_circle(x + i * 30, y, 30, "white")
    draw_circle(x - 15, y + 15, 30, "white")
    draw_circle(x + 15, y + 15, 30, "white")

# 随机生成云朵的位置并绘制
for _ in range(2):
    x = random.randint(-200, 200)
    y = random.randint(50, 150)
    draw_cloud(x, y)

turtle.hideturtle()
turtle.done()

代码解释:

import turtle 导入Turtle库。
random 导入用于生成随机数的模块。

turtle.speed(0) 设置绘制速度为最快。
turtle.bgcolor("sky blue") 设置背景颜色为天蓝色。
turtle.colormode(255) 将颜色模式设置为RGB的255色彩模式。

draw_circle(x, y, radius, color) 绘制一个圆形。
turtle.penup() 抬起画笔。
turtle.goto(x, y - radius) 移动到圆心位置。
turtle.pendown() 放下画笔。
turtle.color(color) 设置填充颜色。
turtle.begin_fill() 开始填充形状。
turtle.circle(radius) 绘制圆形。
turtle.end_fill() 结束填充。

draw_cloud(x, y) 绘制一个云朵。
使用draw_circle() 函数绘制五个圆形组成云朵的形状。

for _ in range(2): 循环2次,每次生成一个随机位置的云朵。
x = random.randint(-200, 200) 随机生成x坐标。
y = random.randint(50, 150) 随机生成y坐标。
draw_cloud(x, y) 在随机位置绘制云朵。

turtle.hideturtle() 隐藏Turtle图标,美化绘图效果。
turtle.done() 保持绘图窗口显示,直到点击关闭。


二、代码二


from turtle import *
from random import randint

# 设置颜色模式为255
colormode(255)


def draw1():
    bgcolor('black')
    x = 1
    while x < 200:
        r = randint(0, 255)
        g = randint(0, 255)
        b = randint(0, 255)

        pencolor(r, g, b)
        fd(50 + x)
        rt(90)  # 将角度参数改为整数或者合理的浮点数
        x = x + 1

    # 在循环结束后调用exitonclick()
    exitonclick()


# 调用draw1函数开始执行绘图
draw1()

代码解释:

bgcolor('black'):设置背景颜色为黑色。
x = 1:初始化一个计数变量x为1,用于控制循环次数。
while x < 200::循环条件,当x小于200时执行循环体内的代码。
在循环内部:
r = randint(0, 255)、g = randint(0, 255)、b = randint(0, 255):生成随机的RGB颜色分量。
pencolor(r, g, b):设置画笔颜色为随机生成的RGB颜色。
fd(50 + x):向前移动一定距离,初始为50,每次循环增加x的值。
rt(90):向右转90度,改变方向。
x = x + 1:更新计数变量x,以便控制循环次数。


三、代码三

代码解释:

t.speed(1): 设置绘制速度为1,即慢速绘制,可以更清楚地观察绘制过程。
t.bgcolor("black"): 设置画布背景颜色为黑色。
t.setup(width=600, height=600): 设置画布大小为宽600像素、高600像素。
t.title("Star Drawing"): 设置绘图窗口的标题为 "Star Drawing"。

t.penup(): 抬起画笔,不绘制轨迹。
t.goto(-50, -50): 将画笔移动到坐标 (-50, -50) 的位置。
t.pendown(): 放下画笔,开始绘制轨迹。
t.begin_fill(): 开始填充图形,填充颜色将被应用到接下来绘制的图形内部。
t.color("gold"): 设置画笔颜色为金色。
for _ in range(5):: 循环5次,每次执行以下操作:
t.forward(100): 向前移动100个像素,绘制五角星的一条边。
t.right(144): 向右转144度,以绘制五角星的下一条边(五角星内角为36度)。
t.end_fill(): 结束填充,完成五角星的绘制并填充金色。

import turtle as t

# 设置画布和画笔
t.speed(1)
t.bgcolor("white")
t.setup(width=600, height=600)
t.title("Star Drawing")

# 绘制五角星
t.penup()
t.goto(-50, -50)
t.pendown()
t.begin_fill()
t.color("gold")
for _ in range(5):
    t.forward(100)
    t.right(144)
t.end_fill()

# 完成绘制
t.hideturtle()
t.done()


  • 48
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值