本帖最后由 TZ425 于 2023-11-2 03:31 编辑
可以打包成exe文件,运行后只有一个线程在后台运行,可以发给好友展示炫酷的效果,视觉上有种中'病毒'
的感觉
python程序打包教程发在我另一个帖子
[Python] 纯文本查看 复制代码 from PIL import Image, ImageDraw
import random
import ctypes
import os
import time
import threading
# 创建线程锁
lock = threading.Lock()
def generate_wallpaper():
# 创建一个新的RGB图像
width, height = 150, 150 # 壁纸的宽度和高度
image = Image.new("RGB", (width, height))
# 创建一个图像绘制对象
draw = ImageDraw.Draw(image)
# 随机生成每个像素的颜色
for x in range(width):
for y in range(height):
# 随机生成RGB值
red = random.randint(0, 255)
green = random.randint(0, 255)
blue = random.randint(0, 255)
# 在当前像素位置绘制颜色
draw.point((x, y), (red, green, blue))
#在C盘下创建Tiback目录保存ZYM.png,可以换成你想要保存的路径
random_path = os.path.join("C:/Tiback", "ZYM.png")
# 检查目录是否存在,如果不存在则创建目录
directory = os.path.dirname(random_path)
if not os.path.exists(directory):
os.makedirs(directory)
# 保存图像到随机路径
image.save(random_path)
# 设置图像为壁纸
SPI_SETDESKWALLPAPER = 20
ctypes.windll.user32.SystemParametersInfoW(SPI_SETDESKWALLPAPER, 0, random_path, 3)
def generate_wallpapers_concurrently():
while True:
# 使用线程锁确保线程安全
with lock:
generate_wallpaper()
# 延迟一段时间再生成下一张壁纸
time.sleep(0.1)
# 启动多个线程执行生成壁纸的任务
for _ in range(10):
threading.Thread(target=generate_wallpapers_concurrently).start() |