问题
# declare score as integer
score = int
# declare rating as character
rating = chr
# write "Enter score: "
# input score
score = input("Enter score: ")
# if score == 10 Then
# set rating = "A"
# endif
if score == 10:
rating = "A"
print(rating)
When I execute this code and enter "10" I get, built-in function chr, in the shell. I want it to print A, or another character depending on the score. For example if the input score was 8 or 9 it would have to read B. But, I'm trying to get past the first step first. I am new to programming, and if I can get pointed in the right direction that would help a lot.
回答1:
# declare score as integer
score = int
# declare rating as character
rating = chr
Above two statement, assigns the function int
, chr
, not declaring the variable with the default value. (BTW, chr
is not a type, but a function that convert the code-point value to character)
Do this instead:
score = 0 # or int()
rating = '' # or 'C' # if you want C to be default rating
NOTE score
is not need to be initialized, because it's assigned by score = input("Enter score: ")
回答2:
In python, you can't do static typing (i.e. you can't fix a variable to a type). Python is dynamic typing.
What you need is to force a type to the input variable.
# declare score as integer
score = '0' # the default score
# declare rating as character
rating = 'D' # default rating
# write "Enter score: "
# input score
score = input("Enter score: ")
# here, we are going to force convert score to integer
try:
score = int (score)
except:
print ('score is not convertable to integer')
# if score == 10 Then
# set rating = "A"
# endif
if score == 10:
rating = "A"
print(rating)
来源:https://stackoverflow.com/questions/42463856/python-declare-as-integer-and-character