python "if" statement always returning false

Question:

Ive looked for awnsers but they dont help.
so my code looks like this:

def creditsyay():
    print("Hosted by GitHub")
    print("Made by Zeplin-Reaper on GitHub. link: https://github.com/Zeplin-Reapers")
guess()
from random import random
import math
number = random() * 100
number = math.ceil(number)
print(number)
def guess():
    uNumber = input("Enter a number: ")
    if uNumber == number:
        print("correct!")
    elif uNumber == "credits()":
        creditsyay()
     else:
         print("Guess Again")
         guess()
    def main():
        guess()

main()

Okay, say Number = 56.
user guesses 5, computer says guess again. Okay.
user then guesses 56.
computer thinks uNumber == number = false
Let me clarify:
computer thinks 56 is not equal to 56
A FIVE YEAR OLD COULD FIND THAT OUT
I need help on how to get the computer to want to do math that a FIVE YEAR OLD could do!!
plz help

EDIT: print(number) is for testing

Asked By: Bloxy Craft

||

Answers:

Replace

uNumber = input("Enter a number: ")

with

uNumber = int(input("Enter a number: "))

I also made a similar program here if you are interested.
https://github.com/brendancreek/Python/blob/master/Guess.py

Answered By: James
Categories: questions Tags: ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.