【圣诞树】用python实现圣诞树效果

 万圣节过完了,下一个就是圣诞节了,那么我们来用代码实现打印一个圣诞树

import random
import time
from colorama import Fore, Back, Style, init

# 初始化colorama
init(autoreset=True)

def print_christmas_tree(height):
    # 打印圣诞树的上部(三角形部分)
    for i in range(1, height + 1):
        stars = ''
        # 每行中可能有彩灯(o 或 +)随机加入
        for j in range(2 * i - 1):
            if random.random() < 0.2:  # 20%的概率放彩灯
                stars += random.choice([Fore.RED + 'o', Fore.YELLOW + '+', Fore.GREEN + '*'])  #给树上色
            else:
                stars += Fore.GREEN + '*'   #给树上色
        spaces = ' ' * (height - i)  # 计算每行前面的空格数量
        print(spaces + stars)

    # 打印圣诞树的树干(矩形部分)
    trunk_width = 3
    trunk_height = 2
    trunk_spaces = ' ' * (height - trunk_width // 2 - 1)
    for _ in range(trunk_height):
        print(trunk_spaces + Fore.YELLOW + '*' * trunk_width)

    # 可选:添加简单的雪花效果
    for _ in range(3):  # 打印三行雪花
        snow = ''.join(random.choice([' ', Fore.WHITE + '.', Fore.WHITE + '*', Fore.WHITE + 'o']) for _ in range(2 * height - 1))
        print(snow)
        time.sleep(0.2)  # 稍微延迟,使效果更有节奏感

# 调用函数,打印一棵高度为 20 的圣诞树
print_christmas_tree(20)

好了这样一个简单的圣诞树效果就出来了,希望对你有帮助,喜欢的小伙伴赶紧去试试吧,关注我,看更多有用有趣的知识

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值