2012-05-07 39 views
0

有沒有什麼辦法可以在列表中存儲套接字和用戶名?我不認爲這是可能的,因爲列表中需要一個整數來存儲索引。你們會推薦我做什麼?真的不知道。Python - 如何在列表中存儲套接字和用戶名?

+3

您確定要放在一個列表,而不是一個字典的情況下列表? – Corbin

+3

你能舉一個你想要完成的例子嗎?從你的問題來看,這不是很清楚。 –

回答

1

最簡單的方法是將元組存儲在列表中。

l = list() 
l.add(tuple(username, socket)) 

print l[0][0], l[0][1] # will print username and soket of first item 

,也可以定義類,例如UserSock,並填寫了此類

class UserSock: 
    def __init__(self, username, socket): 
     self.username = username 
     self.socket = socket 

l = list() 
l.add(UserSock(username, socket)) 

print l[0].username l[0].socket # will print username and soket of first item 
+0

請注意'tuple(username,socket)'引發了一個TypeError - 你只是用括號來創建一個元組,像'(username,socket)'。此外,請注意,您還可以使用[collections.namedtuple](http://docs.python.org/library/collections.html#collections.namedtuple),它的優點是(幾乎)快速輕便一個元組,但給你指定訪問器的可讀性好處。 –

相關問題