Будет False: запятая создаёт одноэлементный кортеж, поэтому data имеет тип tuple, хотя внутри находится int.
Определение, относится ли объект к типу int
Будет False: запятая создаёт одноэлементный кортеж, поэтому data имеет тип tuple, хотя внутри находится int.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Условие
Результат выполнения проверки типа.
data = (1_000_000,)
print(isinstance(data, int)) # False
Ответ
Будет False: запятая создаёт одноэлементный кортеж, поэтому data имеет тип tuple, хотя внутри находится int.
data = (1_000_000,)
print(isinstance(data, int)) # False
print(isinstance(data[0], int)) # True
Подчёркивания внутри литерала нужны только для удобства чтения и не меняют значение миллиона. Скобки без запятой — (1_000_000) — не создали бы кортеж и оставили целое число.
Проверка типа относится к объекту, переданному первым аргументом, а не автоматически ко всем его элементам. Для проверки всех элементов контейнера нужна отдельная логика, например all(isinstance(x, int) for x in data).