Задать вопрос
@TheShifter555

Выдает ошибку «int() argument must be a string, a bytes-like object or a real number, not 'NoneType' », что делать?

Играем с друзьями в кс го 5 на 5 и все время разбиваемя рандомно через рандомайзер чисел.Также пару дней назад начал изучать питон и решил, почему бы не написать скрипт, который будет сам рандомно разбивать игроков на 2 команды.
но при запуске скрипта выдает эту ошибку.Вот скрипт:

import random
#создаю список из имен
list1=["ysny",
"TheShifter555",
"fearless",
"throw",
"User 1022485001",
"S$AMVEL",
"DrO4iLa777",
"by.Crown"]
number=print(input("сколько человек в каждой команде? "))
#пишу сколько нужно человек в каждой команде
Team_1=[]
Team_2=[]
Team_3=[]
#создаю 2 функции
def vibor1(number):
	i=0
	while i<int(number):'''перезапускаю цикл пока i не станет меньше числа игроков в команде'''
		bot=random.choice(list1)'''выбираю рандомное имя из списка'''
		if bot not in Team_1 and bot not in Team_2:
			Team_1.append(bot)
			i+=1
'''если рандомно выбранное имя не в списке1 и не в списке 2 я записываю
его в команду 1, если же он есть в каком либо из списков, то кидаю в тиму 3'''			
		elif bot in Team_1 or bot in Team_2:
			Team_3.append(bot)

def vibor2(number):
	i=0
	while i<int(number):
		bot=random.choice(list1)
		if bot not in Team_1 and bot not in Team_2:
			Team_2.append(bot)
			i+=1
#тут тоже самое только с тимой 2
		elif bot in Team_1 or bot in Team_2:
			Team_3.append(bot)
#запускаю обе функции
vibor1(number)
vibor2(number)
#вывожу их на экран
print(Team_1)
print(Team_2)
  • Вопрос задан
  • 6264 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Python-разработчик + ИИ
    8 месяцев
    Далее
Решения вопроса 2
Shurik24
@Shurik24
Обычный программист самоучка
Зачем выводить в консоль input?
Если указывать текст в input он автоматически его выведет в консоль, print тебе не нужен

number = input("сколько человек в каждой команде?\n>> ")


Это должно помочь
Ответ написан
Комментировать
Vindicar
@Vindicar
RTFM!
number=print(input("сколько человек в каждой команде? "))

print() всегда возвращает None. Нафиг он вообще тут?
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Краснодар
от 220 000 до 300 000 ₽
ITK academy Краснодар
от 75 000 ₽
DimaTech Ltd Краснодар
от 140 000 до 140 000 ₽