現在,有一個字符串「Hello World」當我使用如何更改python的返回值?
set("hello world")
返回{' ','d','e'...}
而不是{"hello","world"}
我怎樣才能改變集函數的返回值?
如果我需要定義一個類,需要注意什麼?
現在,有一個字符串「Hello World」當我使用如何更改python的返回值?
set("hello world")
返回{' ','d','e'...}
而不是{"hello","world"}
我怎樣才能改變集函數的返回值?
如果我需要定義一個類,需要注意什麼?
您不會更改設置函數的返回值。這是Python內置的,你不想這樣做。
你應該改變你傳遞給它什麼:
result = set(["hello", "world"])
它看起來要split()
你的句子。
所以,相反的set()
:
set("hello world")
你應該使用split()
:
"hello world".split(" ")
輸出:
>>> ["hello", "world"]
,或者甚至這個列表傳遞給set()
,如果這是你想要實現的是:
set("hello world".split(" "))
請注意,split()將默認分割爲空白 –
「顯式優於隱式」。 - [Python的禪](https://www.python.org/dev/peps/pep-0020/#id3) –
@ dot.Py我認爲'.split()'在這裏更加明確。他想要一組單詞,如果有超過1個空格,您將得到空的字符串。 – MYGz
您可以將字符串轉換爲一組的話
sentence = "hello world"
wordList = set(sentence.split())
print wordList
輸出:
set(['world', 'hello'])
獲取列表
print list(wordList)
輸出:
['world', 'hello']
@MYGz,謝謝 – aerokite
你究竟想要做什麼? –
它符合規範 - 你傳遞一個_sequence_到你的'set'函數。你的序列不是兩個元素的序列,而是len(「hello world」)元素序列。 –
如果你想把你的字符串分成單詞,你可以使用'set(「hello world」.split())'。請參見['str.split'](https://docs.python.org/2/library/stdtypes.html#str.split)。 – khelwood