Re: [問題] list 一問
※ 引述《aety0129 (Chen)》之銘言:
: 我想要把list中的數據拿出來做分割是可以的嗎?
: list = ['101/01', '102/02', '103/03', '104/04', '105/05', '106/06']
: 分割成這樣
: a = ['101', '102', '103' '104', '105', '106']
: b = ['01', '02', '03', '04', '05', '06']
: 找了一下都是不太相同的用法... 請求支援
如果你只是要割開...
>>> l = ['101/01', '102/02', '103/03', '104/04', '105/05', '106/06']
>>> [i.split('/') for i in l]
[['101', '01'], ['102', '02'], ['103', '03'], ['104', '04'], ['105', '05'],
['106', '06']]
如果你一定要分成兩個 lists...
>>> a, b = zip(*[i.split('/') for i in l])
>>> a
('101', '102', '103', '104', '105', '106')
>>> b
('01', '02', '03', '04', '05', '06')
官方文件就有提到 zip 搭配 * 可以達到 unzip 功能
這點還滿酷的...
不過我必須承認我也是 Google 之後才發現這件事情
http://stackoverflow.com/questions/19339/
另外如同連結裡提到, 參數展開在陣列太大的時候會有問題
(因為參數必須在解析時被完整展開, 無法使用 iterator)
如果有大量資料處理需求的話, 可以考慮連結裡面的另一個解搭配 generator 使用
--
「我最想要的同伴嘛,首先是要笑口常開,其次是我們能永遠不會發生誤會。
如果這些都能辦到的話,嗯,如果他是世界上第一流的橋手,也還不錯。」
-- 班尼多‧加羅素,前義大利藍隊成員
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.32.81.146
推
08/11 02:35, , 1F
08/11 02:35, 1F
→
08/11 02:37, , 2F
08/11 02:37, 2F
→
08/11 04:04, , 3F
08/11 04:04, 3F
推
08/11 06:26, , 4F
08/11 06:26, 4F
推
08/11 14:48, , 5F
08/11 14:48, 5F
推
08/11 15:20, , 6F
08/11 15:20, 6F
→
08/11 15:21, , 7F
08/11 15:21, 7F
→
08/11 16:03, , 8F
08/11 16:03, 8F
→
08/12 17:56, , 9F
08/12 17:56, 9F
→
08/12 17:57, , 10F
08/12 17:57, 10F
推
08/12 21:00, , 11F
08/12 21:00, 11F
→
08/12 23:04, , 12F
08/12 23:04, 12F
→
08/12 23:26, , 13F
08/12 23:26, 13F
推
08/12 23:50, , 14F
08/12 23:50, 14F
討論串 (同標題文章)