0

私はこのコードを持っており、.csv のスクリプトの結果に基づいて (1 つの UserID のみが繰り返し出力されました)、反復ごとに変数が上書きされ、再割り当てされると想定しています。

# User_alias is a raw input (of multiple items)

    print user_alias
        for user in user_alias:
            for row in Dict_list:    
                if user in row.values():
                    print row

        for user in user_alias:
            for row in Dict_list:
                if row.has_key('_akq6p') and row.has_key('_cn6ca'):
                    if user == row['_akq6p'] or user == row['_chk2m']:


#EDIT:
                    UserID = row['_cn6ca']
                    UserIDs=[]
                    UserIDs.append(row['_cn6ca'])
                    print UserIDs

入力/出力の例を次に示します。

Raw input:
Adue Sal
Arthur Bel
Abby Sue

['Adue Sal', 'Art Baraan', 'Abbey Shi']
{'_akq6p': 'adkul', '_dcgjs': 'adkul', '_chk2m': 'Adue Sal', '_cn6ca': '1200df00'}
{'_akq6p': 'artb', '_dcgjs': 'artb', '_chk2m': 'Arthur Bel', '_cn6ca': '00123ffj8'}
{'_akq6p': 'abbys', '_dcgjs': 'abbys', '_chk2m': 'Abby Sue', '_cn6ca': '125gh789'}
['1200df00']
['00123ffj8']
['125gh789']
logout

[Process completed]

これらを .csv に書き込む必要があるため、各 ID を保存する必要がありますが、このコードは最後に検索された ID のみを保存するようです。後で書き込むためにこれらの ID をすべて保存するにはどうすればよいですか?

4

1 に答える 1

0

これが私が実行したものです:http://codecube.io/TlFgaY

ループの外でリストを作成してから追加する必要があります。

print user_alias
for user in user_alias:
    for row in Dict_list:    
        if user in row.values():
            print row

UserIDs = [] # This is the change.
for user in user_alias:
    for row in Dict_list:
        if row.has_key('_akq6p') and row.has_key('_cn6ca'):
            if user == row['_akq6p'] or user == row['_chk2m']:
                UserID = row['_cn6ca']
                print UserID
                UserIDs.append(UserID)

print UserIDs
于 2013-10-21T16:40:26.420 に答える