私のプログラムは色を入力することに依存しているため、文字列が色を定義しているかどうかを調べる方法を探しています。これどうやってするの?ここではいくつかの例は以下のとおりです。文字列が色を定義しているかどうかを確認します
はcheck_color("blue") > True
check_color("deep sky blue") > True
check_color("test") > False
check_color("#708090") > True
私のプログラムは色を入力することに依存しているため、文字列が色を定義しているかどうかを調べる方法を探しています。これどうやってするの?ここではいくつかの例は以下のとおりです。文字列が色を定義しているかどうかを確認します
はcheck_color("blue") > True
check_color("deep sky blue") > True
check_color("test") > False
check_color("#708090") > True
可能な方法の1つは、colour
パッケージを使用することです。あなたがそれを持っていない場合は、コマンドpip install colour
をインストールしてください。次に、以下を使用できます。
from colour import Color
def check_color(color):
try:
# Converting 'deep sky blue' to 'deepskyblue'
color = color.replace(" ", "")
Color(color)
# if everything goes fine then return True
return True
except ValueError: # The color code was not found
return False
check_color("blue")
check_color("deep sky blue")
check_color("test")
check_color("#708090")
あなたはこのようなものを使用する必要があります可能性があります
import re
VALID_COLORS = ['blue', 'red']
HEX_COLOR_REGEX = r'^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$'
def is_hex_color(input_string):
regexp = re.compile(HEX_COLOR_REGEX)
if regexp.search(input_string):
return True
return False
def is_color(input_string):
for color in VALID_COLORS:
if color in input_string or is_hex_color(input_string):
return True
return False
外部モジュールを使用できます。ピップとカラーモジュールをインストールします。
pip install colour
次に、あなたが行うことができます:
>>> from colour import Color
>>> name = "blue"
>>> try:
Color(name.replace(" ",""))
print("Valid Color")
except:
print("Invalid color")
を色が見つからない場合には例外が発生しますので。
有効な色名のリストはどこから取得しますか? – Anonimista