SyntaxError?Exception?
Syntax Error - 書いたscriptに問題有り
Exception / value error - userもしくはuser inputに問題有り
エラー対応策
Exceptionはつきもの。全てのユーザーが必ずしもこちらが指定したルールを守ってくれるとは限らない。のでwhile True:とtryを使って適当な対応策を作ってみる。
while True:
	try:
		number = int(input("what is your favorite number?"))
		print(18/number)
		break
	except valueError: #これでプログラムがErrorを吐かずにすむ
		print("Make sure you enter number")
Zero division Error - 何か数字を0で割った時に起こるエラー。
except Zerodivision Error:
    print("Don't pick zero")
もしくはexcept: breakで問題が起きた瞬間に切っちゃうこともできるが問題の特定ができなくなるのであまり推奨はされていないようだ。
追記
こちらでも似たようなエラーの対応策について触れていたので備忘録として追記。
def div42by(divideBy):
    try:
        return 42 / divideBy
    except ZeroDivisionError:
        print('Error: You tried to divide by zero.')
print(div42by)(2)) #21
print(div42by)(0)) #Error: You tried to divide by zero.
print('How many cats do you have?')
numCats = input()
try:
	if int(numCats) >= 4:
		print('that is a lot of cats')
	else:
		print('that is not that many cats')
except ValueError:
	print('you did not enter a number')