Нужна помощь с решением учебного задания(python)

Задача: Счетчик четных/нечетных чисел.Напишите программу, которая генерирует 100 случайных чисел и подсчитывает количество четных и нечетных случайных чисел.

Собственно вот такая вот задачка в учебнике по питону. Моя логика:

import random # добавляем библиотеку

def main(): # так как задачка в разделе с функциями, придется соблюдать =)
     random_generate()

def random_generate(): #функция вводящая последовательность и считающая количество четных и не четных чисел
     even = 0 #счетчик четных чисел в последовательности
     odd = 0 #счетчик нечетных чисел в последовательности
     i = random.randint(1,100) #введение переменной для генерацуии случайных чисел
     for i in range(101): #подставление случайных чисел в последовательность
          if i % 2 == 0: #проверка на четность/нечетность
              even += 1 
          else:
              odd += 1
     print(even, "четных чисел в последовательности", odd, "нечетных чисел в последовательности")

main()

Ответы (3 шт):

Автор решения: Мокен

Правильнее не делать последовательность из случайных чисел, а сделать список случайных символов.

import random # добавляем библиотеку

def main(): # так как задачка в разделе с функциями, придется соблюдать =)
     random_generate()

def random_generate(): #функция вводящая последовательность и считающая количество четных и не четных чисел
    even = 0 #счетчик четных чисел в последовательности
    odd = 0 #счетчик нечетных чисел в последовательности
    nums = []
    for i in range(100):
        nums.append(random.randint(1,100))
    for i in nums: 
        if i % 2 == 0: #проверка на четность/нечетность
            even += 1 
        else:
            odd += 1
    print(even, "четных чисел в последовательности", odd, "нечетных чисел в последовательности")

main()
→ Ссылка
Автор решения: n1tr0xs

Ваша ошибка в том, что в цикле for i in range(101): идет "тупой" перебор значений от 0 до 101 не включая.
Можно сделать это вот так:

import random

def main():
    count_even_odd_random()


def count_even_odd_random():
    odd = even = 0
    for i in range(100):
        if random.randint(1, 100) % 2 == 0:
            even += 1
        else:
            odd += 1
    print(f'Четных: {even}. Нечетных: {odd}')
→ Ссылка
Автор решения: weinsor
import random
def main():
   random_g()
def random_g():
   even = 0
   odd = 0
   for x in range(100):
     x=random.randint(1,100)
     print(x)#выводит рандомную последовательность
     if x % 2 ==0:
        even += 1
     else:
        odd += 1
 print(f'четных: {even}')
 print(f'нечетных:{odd}')
→ Ссылка