文章目录
先看效果:
基本构想:在黑色背景中随机填充稀薄的彩色像素点
主要流程:
- 先创建 512 x 512的画布,背景设为不透明的纯黑色
- 再在这个512 x 512 个像素点里按照一定的概率随机挑选像素点 m
- 像素点 m 的颜色 从预设的7种颜色(赤橙黄绿青蓝紫)中随机挑选
1. 安装用到的 python 库
pip install pillow
2. 创建 RGBA 图像画布, 背景色设置为不透明的纯黑色
from PIL import Image
width = 512
height = 512
# 图片大小为 512x512
img = Image.new('RGBA', (width, height), (0, 0, 0, 255))
3. 随机挑选 3%的像素点变成彩色
# 设定挑选的点概率 0.03 就是3%
percent = 0.03
# 遍历 512x512 图像的所有像素点
for i in range(512):
for j in range(512):
# 因为 random.random() 产生的随机数是 0到 1 之间均匀分布的
# 就直接用 random.random()产生随机值是 0 到 percent之间的就改变颜色
if random.random() <= percent:
# 从预设的colors颜色列表中随机挑选一个颜色
rgba = random.choice(colors)
# 设定坐标颜色
img.putpixel((j, i), rgba)
4. 保存图片
img.save('c.png', 'PNG')
print("哈哈, 五彩斑斓的黑大功告成!")
img.show()
最后完整代码如下
# 五彩斑斓的黑
from PIL import Image
import random
width = 512
height = 512
# 图片大小为 512x512
img = Image.new('RGBA', (width, height), (0, 0, 0, 255))
# 预设7中颜色,后面随机生成像素点颜色要用到
colors = [
# 赤
(255, 0, 0, 255),
# 橙
(255, 128, 0, 255),
# 黄
(255, 255, 0, 255),
# 绿
(0, 255, 0, 255),
# 青
(0, 255, 255, 255),
# 蓝
(0, 0, 255, 255),
# 紫
(128, 0, 255, 255)
]
# 设定挑选的点概率 0.03 就是3%
percent = 0.03
# 遍历 512x512 图像的所有像素点
for i in range(512):
for j in range(512):
# 因为 random.random() 产生的随机数是 0到 1 之间均匀分布的
# 就直接用 random.random()产生随机值是 0 到 percent之间的就改变颜色
if random.random() <= percent:
# 从预设的colors颜色列表中随机挑选一个颜色
rgba = random.choice(colors)
# 设定坐标颜色
img.putpixel((j, i), rgba)
img.save('c.png', 'PNG')
print("哈哈, 五彩斑斓的黑大功告成!")
img.show()
学习资源推荐
除了上述分享,如果你也喜欢编程,想通过学习Python获取更高薪资,这里给大家分享一份Python学习资料。
这里给大家展示一下我进的最近接单的截图
😝朋友们如果有需要的话,可以点击下方链接领取或者V扫描下方二维码联系领取,也可以内推兼职群哦~
🎁 CSDN大礼包,二维码失效时,点击这里领取👉:【学习资料合集&相关工具&PyCharm永久使用版获取方式】
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

1.Python学习路线
2.Python基础学习
01.开发工具
02.学习笔记
03.学习视频
3.Python小白必备手册
4.数据分析全套资源
5.Python面试集锦
01.面试资料
02.简历模板

🎁 CSDN大礼包,二维码失效时,点击这里领取👉:【学习资料合集&相关工具&PyCharm永久使用版获取方式】