python - TypeError:“图像”对象不可下标
问题描述
尝试创建高度图,但不断收到 TypeError 说 Image 对象不可下标。不知道为什么。
pixels = Image.new('RGB', (1789, 1789), color = 'red')
for i in range(pixels.size[0]):
for j in range(pixels.size[1]):
if pixels[i,j] != (255, 0, 0):
pixels[i,j] = (0, 0 ,0)
解决方案
要获得单个像素,请使用pixels.getpixel((i,j))
. 请注意,这是访问图像的一种非常慢的方法。通常最好使用tobytes
转换为字节列表,然后再将frombytes
其转换回来。
当然,你的例子很愚蠢。每个像素都是 (255,0,0)。
推荐阅读
- typescript - 是否可以从其泛型类型自动生成类属性?
- php - 如何在 guzzle 响应中获取身份验证并发送到视图
- sql - 在 where 子句中使用 CASE 表达式
- cdi - Quarkus / CDI 和“java config”DI 定义
- asp.net-core - 如何使用 devexpress blazor 实现此网格的内联编辑
- java - 如何使用 Mockito FrameWork 模拟 mongoTemplate 对象?
- c# - 单击另一个复选框时禁用一个复选框
- ubuntu - 在树莓派 4(ubuntu 19.10)上安装 bazel 时出现问题
- jenkins - 传递 Jenkins 参数以运行量角器脚本时遇到问题
- flutter-desktop - flutter桌面,如何监控文件