以下是一个简单的Python代码示例,可以在命令行中展示跨年烟花秀:
python复制代码
import time | |
import random | |
# 定义烟花的颜色 | |
colors = ['#FF0000', '#FF7F00', '#FFFF00', '#00FF00', '#0000FF', '#FF00FF'] | |
# 定义烟花的形状 | |
shapes = ['*', '#', '$', '@', '!', '&'] | |
# 定义烟花的初始位置 | |
def get_position(): | |
x = random.randint(0, 25) | |
y = random.randint(0, 25) | |
return x, y | |
# 定义烟花的移动速度和方向 | |
def get_velocity(): | |
dx = random.randint(-2, 2) | |
dy = random.randint(-2, -4) | |
return dx, dy | |
# 定义烟花的爆炸效果 | |
def explode(x, y): | |
print(' ' * x + colors[random.randint(0, len(colors) - 1)] + shapes[random.randint(0, len(shapes) - 1)] + ' ' * (25 - y)) | |
# 定义烟花的移动和爆炸过程 | |
def firework(): | |
x, y = get_position() | |
print(' ' * x + colors[random.randint(0, len(colors) - 1)] + '!' * (25 - y)) | |
while y > 0: | |
x += get_velocity()[0] | |
y += get_velocity()[1] | |
if random.randint(0, 10) < 2: # 20%的概率爆炸 | |
explode(x, y) | |
break | |
print(' ' * x + colors[random.randint(0, len(colors) - 1)] + '!' * (25 - y)) | |
time.sleep(0.1) | |
print() | |
# 模拟跨年烟花秀的效果 | |
for i in range(100): # 产生100朵烟花 | |
firework() | |
time.sleep(random.randint(1, 3)) # 每朵烟花之间的间隔时间随机,范围为1-3秒 |
这个代码使用Python的random
模块随机生成烟花的初始位置、颜色、形状和移动速度和方向。每朵烟花以"!"表示,通过在控制台输出空格和"!"模拟出烟花在空中的效果。在控制台输出结束后,通过调用explode()
函数模拟出烟花爆炸的效果。最后,使用一个循环模拟出跨年烟花秀的效果,每朵烟花之间的间隔时间随机,范围为1-3秒。