我无法理解它是如何运作的。 我输入了:
10 2 3 4 8
简单的代码
b = set(input())
print(b)
返回:
{' ', '3', '1', '2', '8', '0', '4'}
为什么我得到这个' '
el。以及如何获得10而不是'1'
和'0'
?
答案 0 :(得分:2)
set()
采用可迭代(例如list,tuple,dict等)并生成一组项。例如:
x = [4, 5, 6]
y = set(x)
print(y)
#set([4, 5, 6])
字符串也是可迭代的:
for char in "yay":
print(char)
#Output:
y
a
y
因此,一个集合可以转换字符串:
x = "yay there"
y = set(x)
print(y)
#set(['a', ' ', 'e', 'h', 'r', 't', 'y'])
如果您想要每个单词,请使用.split()
:
b = set(input().split())
答案 1 :(得分:0)
使用filter()
和lambda
函数删除空格元素:
>>> filter(lambda x: x is not " ", [" ", "1", "2", " "])
>>> ['1', '2']