我正在尋找一種方法進入列表並直接訪問其元素。例如,以下是獲取集合的笛卡爾積的一般方法。有沒有辦法在python中刪除列表?
>>> list(itertools.product((0,1), (0,1),(0,1),(0,1)))
[(0, 0, 0, 0), (0, 0, 0, 1), (0, 0, 1, 0), (0, 0, 1, 1), (0, 1, 0, 0), (0, 1, 0, 1), (0, 1, 1, 0), (0, 1, 1, 1), (1, 0, 0, 0), (1, 0, 0, 1), (1, 0, 1, 0), (1, 0, 1, 1), (1, 1, 0, 0), (1, 1, 0, 1), (1, 1, 1, 0), (1, 1, 1, 1)]
但是,在這種情況下,四組是相同的,並且它很快變得無聊和厭煩不得不一遍又一遍地鍵入它,這讓人想到這樣做,而不是:
>>> list(itertools.product([(0,1)]*4)
但是當然它不起作用,因爲itertools.product函數會將它看作一組而不是四組。所以,問題是,有沒有辦法做到這一點:
>>> list(itertools.product(delist([(0,1)]*4))
也許你應該考慮創建一些類或者一對類來封裝這些數據的細節,並將你想要在實例上執行的操作公開爲對象方法。 – 2012-01-08 07:19:43