【Turtle圣诞系列】今年的圣诞树都来了圣诞还会远吗?(内含多份源码)

68 篇文章 2 订阅
15 篇文章 2 订阅

前言

今年的圣诞树都来了

圣诞还会远吗?

🎄🎄🎄                            ——栗子同学@顾木子吖

哈喽~最近有没有想我呀?我是栗子同学,今天也在致力于编程学习!

 这不?前几天去逛超市,看到早早的那些苹果🍎装饰的稳稳当当的,这一看就是为了迎接圣诞

节,虽然这是个西方节日,但是最近几年貌似在年轻人之间还是挺流传的,所以想着让大家也能过

一过🎄圣诞嘛~没啥赠送的,就作为一枚程序媛给大家赠送一些圣诞的小代码给大家吧!

小编这边已经节日气氛满满,各大圣诞树、平安果都已经换上新装。

现在,圣诞树比美大赛正式开 始!快跟着栗子一起来康康吧~

图片

正文

今天不止分享圣诞节文案,还有多份圣诞节小小程序哦——希望屏幕前的你会喜欢。

图片

一、圣诞小文案🎄

🎁礼物不分轻重,只要有你便是好。

🎁圣诞一个人过了没几天,跨年又跟着捣乱。

🎁Merry Christmas不如Marry me。

1)一行代码实现的圣诞树🎄

print('*'.rjust(3),'* *'.rjust(4),'* * *','|'.rjust(3),sep='\n')

 2)一行代码五彩斑斓的小圣诞树🎄

print("\033[5;35;40m"+'*'.rjust(3)+"\033[0m","\033[5;36;40m"+'* *'.rjust(4)+"\033[0m","\033[5;46;40m* * *\033[0m","\033[5;35;40m"+'|'.rjust(3)+"\033[0m",sep='\n')

 3)升级一点大的弹窗圣诞树🎄

上面的太太简单了,下面升级下👇👇👇👇👇👇

import os
import sys
import random
import time
import numpy as np
class UI(object):
    def __init__(self):
        os_name = platform.uname()[0]
        self.IS_WIN = os_name == 'Windows'
        self.IS_MAC = os_name == 'Darwin'
        if self.IS_WIN:
            self.RED = 0x0C
            self.GREY = 0x07
            self.BLUE = 0x09
            self.CYAN = 0x0B
            self.LINK = 0x30
            self.BLACK = 0x0
            self.GREEN = 0x0A
            self.WHITE = 0x0F
            self.PURPLE = 0x0D
            self.YELLOW = 0x0E
        else:
            self.RED = '\033[1;31m'
            self.GREY = '\033[38m'
            self.BLUE = '\033[1;34m'
            self.CYAN = '\033[36m'
            self.LINK = '\033[0;36;4m'
            self.BLACK = '\033[0m'
            self.GREEN = '\033[32m'
            self.WHITE = '\033[37m'
            self.PURPLE = '\033[35m'
            self.YELLOW = '\033[33m'
        self.p = self.win_print if self.IS_WIN else self.os_print
    def clear(self):
        os.system('cls' if self.IS_WIN else 'clear')
        return self
    def win_reset(self, color):
        from ctypes import windll
        handler = windll.kernel32.GetStdHandle(-11)
        return windll.kernel32.SetConsoleTextAttribute(handler, color)
    def win_print(self, msg, color, enter=True):
        color = color or self.BLACK
        self.win_reset(color | color | color)
        sys.stdout.write(('%s\n' if enter else '%s') % msg)
        self.win_reset(self.RED | self.GREEN | self.BLUE)
        return self
    def os_print(self, msg, color, enter=True):
        color = color or self.BLACK
        sys.stdout.write(
            ('%s%s%s\n' if enter else '%s%s%s') % (color, msg, self.BLACK))
        return self
def tree(ui, level=3):
    a = [i for i in range(0, (level + 1) * 4, 2)]
    b = a[0:2]
    for i in range(2, len(a) - 2, 2):
        b.append(a[i])
        b.append(a[i + 1])
        b.append(a[i])
        b.append(a[i + 1])
    b.append(a[-2])
    b.append(a[-1])
    light = True
    while True:
        ui.clear()
        ui.p(u'\t圣诞节快乐!\n\t\t\t栗子同学=顾木子吖 记得关注我哦~', ui.RED)
        print
        light = not light
        lamp(ui, b, light)
        for i in range(2, len(b)):
            ui.p(
                '%s/' % (' ' * b[len(b) - i - 1]), ui.GREEN, enter=False)
            neon(ui, 2 * b[i] + 1)
            ui.p('\\', ui.GREEN, enter=True)
        time.sleep(0.2)
def neon(ui, space_len):
    colors = [ui.RED, ui.GREY, ui.BLUE, ui.CYAN, ui.YELLOW]
    for i in range(space_len):
        if random.randint(0, 16) == 5:
            ui.p('o', colors[random.randint(0, len(colors) - 1)], enter=False)
        else:
            ui.p(' ', ui.RED, enter=False)
def lamp(ui, tree_arr, light):
    colors = [ui.WHITE, ui.BLUE]
    if not light:
        colors.reverse()
    ui.p(' ' * (tree_arr[-1] + 1), ui.BLACK, enter=False)
    ui.p('|', colors[1])
    ui.p(' ' * tree_arr[-1], ui.BLACK, enter=False)
    ui.p('\\', colors[1], enter=False)

    ui.p('|', colors[0], enter=False)

    ui.p('/', colors[1])
    ui.p(' ' * tree_arr[-2], ui.BLACK, enter=False)
    ui.p('-', colors[0], enter=False)
    ui.p('-', colors[1], enter=False)
    ui.p('=', colors[0], enter=False)
    ui.p('O', colors[1], enter=False)
    ui.p('=', colors[0], enter=False)
    ui.p('-', colors[1], enter=False)
    ui.p('-', colors[0], enter=True)
    ui.p(' ' * tree_arr[-1], ui.BLACK, enter=False)
    ui.p('/', colors[1], enter=False)
    ui.p('|', colors[0], enter=False)
    ui.p('\\', colors[1])
    ui.p(' ' * tree_arr[-2], ui.BLACK, enter=False)
    ui.p('/  ', ui.GREEN, enter=False)
    ui.p('|', colors[1], enter=False)
    ui.p('  \\', ui.GREEN, enter=True)
def main():
    ui = UI()
    max_rows = 4
    tree(ui, max_rows)
if __name__ == '__main__':
    main()

4)星星圣诞树🎄

import turtle
 
 
# 定义圣诞树的绿叶函数
def tree(d, s):
    if d <= 0:
        return
    turtle.forward(s)
    tree(d - 1, s * .8)
    turtle.right(120)
    tree(d - 3, s * .5)
    turtle.right(120)
    tree(d - 3, s * .5)
    turtle.right(120)
 
 
n = 100
""" 设置绘图速度
'fastest' :  0
'fast'    :  10
'normal'  :  6
'slow'    :  3
'slowest' :  1
"""
turtle.speed('fastest') # 设置速度
 
turtle.left(90)
turtle.forward(3 * n)
turtle.color("orange", "yellow")
turtle.left(126)
 
 
# turtle.begin_fill()
for i in range(5):
    turtle.forward(n / 5)
    turtle.right(144)
    turtle.forward(n / 5)
    turtle.left(72)
    turtle.end_fill()
turtle.right(126)
turtle.color("dark green")
turtle.backward(n * 4.8)
 
# 执行函数
tree(15, n)
turtle.backward(n / 5)
turtle.down()

 5)爱心圣诞树🎄

图片

 小结

“十二月有水晶球、有被雪铺满的夜晚、有星星点灯的灯光、有炉火旁的童话书还有奇迹。”

本文就到这里结束了,全部的源码都在我这儿记得找我拿哈!

  • 8
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值