Как высчитать нахождение символа до определенного индекса в строке
Суть кода такова: Если во введенной пользователем строке есть запятая на позиции до 10 (не включительно), выведите ROBOT, иначе выведите HUMAN. Я решила здесь использовать метод find, но в моем случае код работает неправильно:
line = input()
if line.find(',', 0, 8):
print("ROBOT")
else:
print("HUMAN")
На выводе всегда ответ ROBOT. В чем ошибка?
Ответы (2 шт):
Автор решения: Oopss
→ Ссылка
str.find(sub[, start[, end]])
Возвращает наименьший индекс в строке, в которой подстрока sub находится в пределах фрагмента s[start:end]. Необязательные аргументы start и end интерпретируются как в нотации slice. Возвращается -1, если подстрока не найдена.
if 0 <= line.find(',') < 10:
print("ROBOT")
else:
print("HUMAN")
В условии if line.find(',', 0, 8) если в строке с позиции 0 по позицию 8 будет запятая, то вернется номер позиции, т.е. True
Автор решения: чистов_n
→ Ссылка
Можно с помощью срезов:
line = input()
if ',' in line[:10]:
print("ROBOT")
else:
print("HUMAN")