我想知道什麼是Python的方式來執行以下 - 給定一組:Python中的字符串添加到所有集合的元素
s = {'s1','s2','s3'}
我想執行類似:
s.addToAll('!')
得到
{'s1!','s2!','s3!'}
謝謝!
我想知道什麼是Python的方式來執行以下 - 給定一組:Python中的字符串添加到所有集合的元素
s = {'s1','s2','s3'}
我想執行類似:
s.addToAll('!')
得到
{'s1!','s2!','s3!'}
謝謝!
對於實際設定:
>>> s = {'s1','s2','s3'}
>>> {x + '!' for x in s}
set(['s1!', 's2!', 's3!'])
這種方法是2.7+,如果您使用Python 2.6,你就必須做到這一點,而不是:
>>> s = set(['s1','s2','s3'])
>>> set(x + '!' for x in s)
set(['s1!', 's2!', 's3!'])
不錯,但我覺得他需要元組你以前的答案'[x +'!'對於s]' –
@GrijeshChauhan這將導致一個列表,需要'tuple()'它仍然。 –
@GrijeshChauhan我決定回答實際的問題,說套,它是模糊的所以這就是爲什麼我說「爲一套實際」 – jamylak
你可以試試這個:
>>> s = ['s1','s2','s3']
>>> list(i + '!' for i in s)
檢查更新後的問題,現在是錯誤的。你也應該總是使用'[i +'!'爲我在s]列表comps而不是列表構造函數 – jamylak
元組是不可變的。見:http://stackoverflow.com/questions/626759/whats-the-difference-between-list-and-tuples-in-python –
@jamylak - 的確,我編輯了這個問題。謝謝。 –