Assign the value returned by the call to input()
to a variable, like mood
and then check the value of mood
in the expressions in the if
statement. Also, you'd want something like mood in range(4, 8)
since range()
is up-to-but-not-including and you don't want too loop.
So:
import random
A = "You're looking great today!"
B = "Remember, coding takes practice. You're doing great!"
C = "It's okay to take a break every once in awhile."
D = "You matter."
E = "Mental health is as important as physical health."
F = "Take a nap, you deserve it!"
G = "Good luck today!"
def main():
# added a newline, since typing a literal newline doesn't work
print("""Positivity Generator\n---------------------""")
greet()
# assigning the result of the call to `input()` (and `int()`) to a variable
mood = int(input("Whats your mood on a scale of 1-10? "))
# comparing the value of the variable
if mood <= 3:
print(random.choice([B, D, E]))
# reusing the value in `mood`; 8 is not included in the `range()`
elif mood in range(4, 8):
print(random.choice([C, F]))
else:
print(random.choice([A, G]))
def greet():
name = input("What is your name? ")
name = name.title()
print(f"Hello, {name}")
# not required, but this ensures `main()` is only executed when the script is
# run directly, not when it is imported.
if __name__ == '__main__':
main()
Note that I changed the indentation to be 4 spaces instead of 2, which is default for Python - it's best to follow conventions, which makes your code easier to read and maintain, and to combine it with other code.
There's more improvements possible. For one, you don't need all those variables (and the shouldn't be named using capitals, because Python code typically reserves names with capitals for classes).
So:
# lists in dictionary, for various levels of motivation
motivation = {
0: [
"Remember, coding takes practice. You're doing great!",
"You matter.",
"Mental health is as important as physical health."
],
1: [
"It's okay to take a break every once in awhile.",
"Take a nap, you deserve it!"
],
2: [
"You're looking great today!",
"Good luck today!"
]
}
def main():
print("""Positivity Generator\n---------------------""")
greet()
mood = int(input("Whats your mood on a scale of 1-10? "))
# get the appropriate level based on mood
level = 0 if mood <= 3 else 1 if mood <= 7 else 2
# print a random motivation message for that level
print(random.choice(motivation[level]))