python - 检查字符串是否定义了颜色

标签 python colors

我正在寻找一种方法来检查字符串是否定义了颜色,因为我的程序依赖于用户输入颜色,并且当他们输入错误的颜色时程序会中断。我怎样才能做到这一点?以下是一些示例:

check_color("blue") > True
check_color("deep sky blue") > True
check_color("test") > False
check_color("#708090") > True

最佳答案

下面是使用 matplotlib 检查字符串是否定义颜色的方法:

>>> from matplotlib.colors import is_color_like
>>>
>>> is_color_like('red')
True
>>> is_color_like('re')
False
>>> is_color_like(0.5)
False
>>> is_color_like('0.5')
True
>>> is_color_like(None)
False
>>>
>>> matplotlib.colors.__file__
'/usr/lib/python2.7/site-packages/matplotlib/colors.py'

在 matplotlib.colors 模块的源代码中是这样写的:

The module also provides functions for checking whether an object can be interpreted as a color (:func:is_color_like), for converting such an object to an RGBA tuple (:func:to_rgba) or to an HTML-like hex string in the #rrggbb format (:func:to_hex), and a sequence of colors to an (n, 4) RGBA array (:func:to_rgba_array). Caching is used for efficiency.

关于python - 检查字符串是否定义了颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42876366/

相关文章:

user-interface - 给定背景颜色,如何获得使其在该背景颜色上可读的前景色?

java - 如何为包含多个 JPanel、JButton 和 JLabel 的 JFrame 设置背景颜色?

python - 使用 Python 查找具有相似调色板的图像

Python "in"range() 上的运算符时间复杂度

python - 如何配置 pip 以使用可编辑安装来满足要求

python - 将 utf-8 写入 Excel CSV

ios - 在 Swift 的绘图类中设置自定义 RGB 颜色

python - 如何通过 Fabric 设置远程服务器时区?

python - 使用 Boto 将无值插入 DynamoDB

flutter - Flutter-尝试从AssetImage加载时发生超时