我被要求使用网格(100100)和np.meshgrid公司以及np角当python数组的最后一个值是一个模糊的时候,python说的是一个模糊的值,而我只想用一个布尔值来表示这个值。使用a.any()或a.all()。在
from PIL import Image
import numpy as np
XX = np.arange(0,101)
YY = np.arange(0,101)
x, y = np.meshgrid(XX, YY)
x = x-50
y = y-50
z = x+ y*-1j
print z
a = np.angle(z,deg=True)
grid = (a>=0 and a<20) or (a>=40 and a<60) or (a>=80 and a<100) or (a>=120 and a<140) or++ (a<=-20 and a>-40) or (a<=-60 and a>-80) or (a<=-100 and a>-120) or (a<=-140 and a>-160)
grid = grid.astype('uint8') * 255
new_img = Image.fromarray(grid ,'L')
new_img.save("grid .bmp")
几个问题:
1)当给我们一个错误消息时,你应该指出它所指的代码行。在
2)这是SO问题(与Python和numpy相关)中最常见的错误消息之一。在
我猜错误发生在:
有两个原因
1)使用
and/or
代替&/|
2)相对于&/|的
>=
类运算符的优先级。把()
放在前者的周围。在^{pr2}$
所以正确的表达方式是
分别尝试}和{},分别为}。在
&
和|
或{and
和{“and”和“or”比较整个对象的整体真实性,但您需要元素wise and的模拟。还有一些numpy函数}更显式。在
logical_and
和{相关问题 更多 >
编程相关推荐