Помощь по синтаксису: почему мой код игнорирует мой последний оператор elif? [дубликат]Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Помощь по синтаксису: почему мой код игнорирует мой последний оператор elif? [дубликат]

Сообщение Anonymous »

Я пытаюсь создать генератор случайных чисел для рисунков и цветов кошачьей шерсти.
  • Сначала мой генератор выбирает рисунок шерсти. Это может быть полосатый, ситцевый и т. д.
  • Затем он выберет цвет шерсти в зависимости от рисунка. У ситцевого цвета должно быть три цвета, у пегого на сплошном - два, у однотонного - один и т. д.
Проблема в том, что мой код не будет создать узор из трех цветов.
Вот мой текущий код:

Код: Выделить всё

import random

coatpatternList = [
"calico coat pattern",
"half-and-half split down the middle coat pattern",
"piebald on solid coat pattern",
"piebald on tabby coat pattern",
"point coat pattern",
"solid coat pattern",
"tabby coat pattern",
"toirtoiseshell coat pattern",
"tuxedo coat pattern",
]
coatpattern = (random.choices(coatpatternList))

coatcolorList = [
"auburn",
"black",
"blonde",
"brown",
"caramel",
"dark brown",
"dark gray",
"gray",
"light brown",
"light gray",
"orange",
"red",
"white",
"yellow",
]

if "solid coat pattern" in coatpattern:
coatcolor = (random.choices(coatcolorList))
elif "point coat pattern" or "half-and-half split down the middle coat pattern" or "tortoiseshell coat pattern" or "piebald on solid coat pattern" or "tabby coat pattern" or "tuxedo coat pattern" in coatpattern:
coatcolor = (random.sample(coatcolorList, k=2))
elif "piebald on tabby coat pattern" or "calico coat pattern" in coatpattern:
coatcolor = (random.choices(coatcolorList, k=3))

print(coatpattern, coatcolor)
Если он выберет выкройку ситцевого пальто, он выдаст мне что-то вроде этого:

Код: Выделить всё

['calico coat pattern'] ['caramel', 'red']
Это неверно, поскольку мне нужно, чтобы выкройка ситцевого пальто имела три цвета вместо двух.

Подробнее здесь: https://stackoverflow.com/questions/791 ... -statement
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»