2013-08-22 444 views
0

這是我的代碼。我必須在這裏添加一個完整列表(http://pastebin.com/u5S0rF9D)列表,我該怎麼做?這是我導入到python的excel文件(https://docs.google.com/spreadsheet/ccc?key=0Atza5UMAhSHRdHJMWGZqZlRrZWpySnU1SHhKOXFlN2c#gid=0) 我向maleList「追加」什麼?如何將一整個元素列表添加到一個列表中?

import random 

gender = raw_input("Enter your character gender (Male/Female): ") 
start = raw_input("Enter Please enter starting letter of name(A to B): ") 

import csv 
readerFileHandle = open("Book1.csv", "rb") 
malenames = csv.reader(readerFileHandle) 
for row in malenames: 
    y = [] 
    for x in row: 
     if x[-1] == '\xa0': 
      y.append(x[:-2]) 
     else: 
      y.append(x) 
    for z in y:  
     print z 
maleList = [] 
maleList.append() 
print maleList 
readerFileHandle.close() 
+1

你的代碼有什麼問題? – TerryA

+1

你在尋找'list.extend'嗎? –

+0

不,我的老師說這是能夠把所有的名字列入名單 –

回答

0

,如果你有A = [1,2]和b = [3,4],想表b附加到列出,然後

>>> a=[1,2] 
>>> b=[3,4] 
>>> a.extend(b) 
>>> a 
[1, 2, 3, 4] 
+0

擴展不是我正在尋找的,因爲我沒有所有名稱的列表。 –

2

如果你希望他們所有的在一個列表,如糊箱,只是追加他們直接

malenames = csv.reader(readerFileHandle) 
maleList = [] 
for row in malenames: 
    for x in row: 
     maleList.append(x.rstrip('\xa0')) 

你可以寫,而不是作爲一個列表理解

malenames = csv.reader(readerFileHandle) 
maleList = [x.rstrip('\xa0') for row in malenames for x in row] 

編輯:看起來好像有一個組合'\xc2\xa0'附加到一些條目的末尾。所以它應該是x.rstrip('\xc2\xa0')正確清理它們

+0

我認爲原始代碼試圖從最後一個條目去除\ x0d \ x0a。 –

+0

@SteveBarnes,以及'x.rstrip('\ xd0 \ x0a')'在這種情況下會起作用。甚至可能會使用'x.rstrip()'。然而,輸出似乎已經剝奪了一堆條目中的最後一個字符。 –

+0

只看原來的代碼,它有'如果x [-1] =='\ xa0': y.append(x [: - 2])' –

相關問題