0%

解决taichi报错:name 'color' is not defined

首先说明一下版本:(python/taichi/pip on Mac)

python版本:Python 3.7.4

taichi版本:

  • taichi 0.6.24
  • taichi-glsl 0.0.8
  • taichi-nightly 0.5.11
  • taichi-three 0.0.2

pip版本:pip 19.2.3 from /usr/local/anaconda3/lib/python3.7/site-packages/pip (python 3.7)

运行

1
2
gui.text(content=f'D: damping {damping[None]:.2f}', pos=(
0, 0.85), color=0x0)

的时候,taichi居然会报错,报错信息如下:

1
2
3
4
5
6
File "/usr/local/anaconda3/lib/python3.7/site-packages/taichi/misc/gui.py", line 304, in text
r, g, b = hex_to_rgb(color)
File "/usr/local/anaconda3/lib/python3.7/site-packages/taichi/misc/gui.py", line 423, in hex_to_rgb
r, g, b = (color >> 16) & 0xff, (color >> 8) & 0xff, color & 0xff

NameError: name 'color' is not defined

解决方法就是进入这个文件( site-packages/taichi/misc/gui.py

找到报错的地方(第423行)

原来:

1
2
3
def hex_to_rgb(c):
r, g, b = (color >> 16) & 0xff, (color >> 8) & 0xff, color & 0xff
return r / 255, g / 255, b / 255

改为:

1
2
3
def hex_to_rgb(c):
r, g, b = (c >> 16) & 0xff, (c >> 8) & 0xff, c & 0xff
return r / 255, g / 255, b / 255

就搞定了。

-------------本文结束感谢您的阅读-------------

欢迎关注我的其它发布渠道