Я пытаюсь написать такую функцию, чтобы, если строка или число передано, данные s возвращаются в обратном порядке. В противном случае он возвращается как есть.TypeError при проверке, например, на str
Вот мой код:
def reverse_it(data):
if isinstance(data, str):
return data[::-1]
elif isinstance(data, int):
return data[::-1]
else:
return data
Это приводит к ошибке:
File "play.py", line 10, in <module>
print reverse_it(9000)
File "play.py", line 5, in reverse_it
return data[::-1]
TypeError: 'int' object has no attribute '__getitem__'
Почему я могу проверить тип данных в str
объекта, но не для межд?
'Элиф isinstance (данные, Int): возвращение Int (Str (данные) [: : -1]) '? – NightShadeQueen
Вы успешно проверяете, что 'data' является' int'. Ошибка заключается в попытке срезать 'int', как если бы это была строка. – 101
Лицо, задающее вопрос, должно определить, какая строка и номер. Существует несколько возможностей, которые отличаются версией Python. –