Python – неподдерживаемый тип (-ы) операндов для%: ‘list’ и ‘int’

Вопрос: Я рассмотрел другие вопросы о stackoverflow, но они разные и, похоже, не применяются к этому вопросу, так что здесь. Я написал простой скрипт, который дает мне распечатку из каждого числа между 1-49 и помещает его в список, используя функцию диапазона. Теперь я определил функцию для определения того, какие числа являются нечетными и какие числа

Вопрос:

Я рассмотрел другие вопросы о stackoverflow, но они разные и, похоже, не применяются к этому вопросу, так что здесь.

Я написал простой скрипт, который дает мне распечатку из каждого числа между 1-49 и помещает его в список, используя функцию диапазона.

Теперь я определил функцию для определения того, какие числа являются нечетными и какие числа четные, вот мой код:

def check(number): if number%2==0: print «Even Numbers:»,(number) else: print «Odd Numbers:»,(number) a = range(1,50) print a check(a)

При запуске скрипта я получаю следующую ошибку:

unsupported operand type(s) for %: ‘list’ and ‘int’

Поэтому я знаю, что это означает, что оператор% не может не поддерживать “списки” или “ints”, но как я могу его исправить?

Я попробовал это:

def check(number): if number%2==0: print «Even Numbers:»,(number) else: print «Odd Numbers:»,(number) a = range(1,50) b = str(a) check(str(a))

Но получите ошибку:

Traceback (most recent call last): File «showEvenNumbers.py», line 12, in <module> check(str(a)) File «showEvenNumbers.py», line 2, in check if number%2==0: TypeError: not all arguments converted during string formatting

Поэтому я немного не уверен, что делать.

Любая помощь приветствуется.

Лучший ответ:

a – список, но check ожидает единственное целое число. Вам нужно перебирать список:

for item in a: check(item)

Оцените статью
Добавить комментарий