0

定義した数値に基づいて複数の変数を作成したいと考えています。
現在、クライアントとサーバーを実行しており、クライアントが参加するたびに、サーバーに変数を作成させたいと考えています。各ユーザーには次の番号が割り当てられます。

list_of_addr = []
user_num = 0
recv_verf, addr = server_socket.recvfrom(2048)
if(recv_verf == 'connect'):
    recv_user, addr = server_socket.recvfrom(2048)
    list_of_addr.append('User:' + recv_user + ' # ' + str(user_num) + '\n')
    user_num = user_num + 1
    print 'User:' + recv_user + ' # ' + str(user_num) + ' connected'

この数値に基づいて、ここに変数を作成したいと思います。user_(user_num) = 0 に似て
います。これを他に説明する方法がわかりません。申し訳ありませんが、これはあいまいです。

4

2 に答える 2

9

これをしないでください。名前でポイントされるアイテムの動的グループが必要な場合は、それdictが目的です。特定の順序でアイテムのリストが必要な場合は、それが alistです。

変数名は、プログラマーが実際にコードに記述したものに保つ必要があります。もう一方の道には狂気が横たわっています。

于 2012-12-24T20:00:19.583 に答える
0

dict はこれに対する適切な解決策です:

list_of_addr = []
user_num = 0
recv_verf, addr = server_socket.recvfrom(2048)
if(recv_verf == 'connect'):
    recv_user, addr = server_socket.recvfrom(2048)
    list_of_addr.append(dict(user=recv_user, number=user_num))
    user_num = user_num + 1
    print 'User: {0} # {1} connected'.format(list_of_addr[-1]['user'], list_of_addr[-1]['number']
于 2012-12-24T20:07:49.650 に答える