Подсчет количества символов на ваше имя - PullRequest
0 голосов
/ 14 октября 2019

Я начал изучать Python со вчерашнего дня и сделал простую игру, используя Python. Он подсчитывает, сколько символов содержит имя, которое вы вводите. Но я продолжаю получать неправильные ответы. Может кто-нибудь проверить мой код. Мой код выглядит следующим образом. Спасибо.

print('What is your name?')

Name = input()

print('How many alphabets does your name have?')

Char = input()

if Char == len(Name):

    print('Good job')

else:

    print('What?')

Ответы [ 3 ]

0 голосов
/ 14 октября 2019

Как отметил Генри, переменная Char представляет собой строку , и вы сравниваете ее с целым числом , которое всегда будет возвращать FALSE .

Вы должны использовать функцию int(), которая преобразует любой тип данных в целое число, например:

print('What is your name?')

Name = input()

print('How many alphabets does your name have?')

Char = input()

if int(Char) == len(Name):

    print('Good job')

else:

    print('What?')
0 голосов
/ 14 октября 2019
print('What is your name?')

Name = input()
print('How many alphabets does your name have?')

Char = input()
print(type(Char))

if Char is len(Name):

    print('Good job')

else:

    print('What?')

Char = int(Char)
print(type(Char))
if Char is len(Name):

    print('Good job')

else:

    print('What?')

Просто взгляните на приведенный выше код, и вы поймете, что поскольку input () предоставляет строку и вы пытались сравнить строку с целым числом, она не удовлетворяла условию if. Поэтому он перешел к другому и напечатал «Что»

Найдите вывод моего кода выше.

How many alphabets does your name have?
6
<class 'str'>
What?
<class 'int'>
Good job

Надеюсь, это поможет вам получить более четкую картину.

0 голосов
/ 14 октября 2019

Вероятно, это потому, что вы оцениваете строку с числом, и это не работает, поэтому, если вы превратите Char в целое число с int, вы можете сравнить их.

...