Как создать множество из чисел типа int?

a = input() + input()
# На вход подаются данные 123456 и 23456

Как преобразовать их в множество чтобы получилось?

{1, 2, 3, 4, 5, 6...} а не {'1', '2', '3', '4', '5', '6'...}


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

Автор решения: Vasilijs

можно так:

a = set(map(int, input().split()))
→ Ссылка
Автор решения: Dmitry

UPD переделал под множества, не сразу увидел=(

Можно сразу прописать приведение типа, хоть для одного, хоть для многих стандартных вводов

int_input = int(input())

Лучше в цикл обратить вашу конструкцию

a = set()
for i in range(5):
    a.add(int(input()))

Либо принимать строку сразу и работать с ней, без многого числа input

a_str = input() # 1 2 3 4 5
a_int = {int(i) for i in a_str.split()}
→ Ссылка
Автор решения: Alexander Koval

функция input возвращает тип str, преобразуйте её в int

→ Ссылка
Автор решения: insolor

Если цифры вводятся слитно, и каждая цифра (отдельный символ числа) должна стать отдельным элементом списка, то делайте так:

a = input() + input()
b = set(map(int, a))
print(b)

Или через set comprehension:

a = input() + input()
b = {int(x) for x in a}
print(b)
→ Ссылка
Автор решения: Daniil Zhernosek

Правильный ответ.

a, empty = list(input()) + list(input()), set()
empty.update(int(i) for i in a)
→ Ссылка