我有一個看起來像這樣的文件:使用從另一個列表信息號碼列表
100 2
300 3
50 1
500 5
,我想生成號碼池,其中數字的次數也就是在第一個數字該列表應該發生x次(x是列表中的第二個數字)。
這就是我想要的輸出是:
[100, 100, 300, 300, 300, 50, 500, 500, 500, 500, 500]
我寫了這樣的功能:
def Pool(pos, count):
pool = pos*int(count)
return pool
和每行我追加所有的數字到一個名爲bigpool
變量bigpool = []
for line in weightposfile:
line = line.rstrip()
f = line.split('\t')
pos = f[0]
count = int(f[1])
pool = Pool(pos, count)
bigpool.append(pool)
但是,這將返回一個像這樣的列表:
[100100, 300300300, 50, 500500500500500]
如何分離數字並獲得我想要的輸出(如上所示)?
請記住,Python約定是僅對類名使用大寫的大寫字母。這只是一個慣例,但在大多數設置中,「pool」將是您的功能的預期名稱。 – 2012-03-20 15:00:17
該輸出不能由該代碼生成。你的「pos」是一個字符串,所以輸出應該看起來像'['100100','300300300','50','500500500500500']'。請複製並粘貼代碼並輸出您想要評論的內容。 – DSM 2012-03-20 15:03:55
你是對的,它看起來像那樣。抱歉!我下次複製粘貼。 – edg 2012-03-20 15:10:18