Python ошибка в синтаксисе

не могу разобраться, где в коде ошибка

import random
print("для выхода напишите.")

while True
a = input("ведите вопрос:")
number = random.randint(1,5)
if(a = .)
    break
if(number = 1)
    print("да")
if(number = 2)
    print("нет")
if(number = 3)
    print("и да и нет")
if(number = 4)
    print("скорее да чем нет")
if(number = 5)
    print("скорее нет чем да")

Ответы (2 шт):

Автор решения: Victor VosMottor thanks Monica
import random
print("для выхода напишите.")

while True:
    a = input("ведите вопрос:")
    number = random.randint(1,5)

    if a == 'quit':
        break
    elif number == 1:
        print("да")
    elif number == 2:
        print("нет")
    elif number == 3:
        print("и да и нет")
    elif number == 4:
        print("скорее да чем нет")
    elif number == 5:
        print("скорее нет чем да")
→ Ссылка
Автор решения: MarianD

Много ошибок:

while True

отсутствует двоеточие (:) в конце. Правильно:

while True:

a = input("ведите вопрос:")

Это и последующие команды должны быть в цикле while True:, значит, должны быть отступы. Правильно:

    a = input("ведите вопрос:")

if(a = .)

Три ошибки в этой строке, и во всех похожих первые 2 из них:

  • отсутствует двоеточие (:) в конце,
  • оператор сравнения не =, а ==,
  • точка (.) должна быть в кавычках, потому что это не число, а символ, так: ".",
  • скобки не нужны (но могут быть — это не является ошибкой).

Правильно:

if a == ".":
→ Ссылка