2013-03-19 2 views
-7

У меня есть список, как это:Как изменить этот список кортежей в список только в Python?

[[(u'[email protected]',)], [(u'[email protected]',)]] 

Я хочу, чтобы преобразовать это в:

[['[email protected]'], ['[email protected]']] 

Как я могу это сделать?

Другой пример: Input: [[(u'hello',), (u'hello',)], [(u'hello',)]] Если вернуться [['[email protected]', '[email protected]'], ['[email protected]']]

+0

Почему я downvoted этот вопрос: http://meta.stackexchange.com/a/149138/133242 –

ответ

0
test = [[(u'hello',), (u'hello',)], [(u'hello',)]] 
for i, part_i in enumerate(test): 
    for j, part_j in enumerate(part_i): 
     test[i][j] = str(part_j[0]) 

Или, если вы предпочитаете версию одной строки:

test = [[(u'hello',), (u'hello',)], [(u'hello',)]] 
result = [[str(j[0]) for j in i] for i in test] 
0
new = [[j[0].encode('utf-8') for j in i] for i in old] 

UTF-8 это просто пример, вы должны действительно убедиться, что вы получаете право кодирования.

+0

все еще юникод? Как удалить? – user1881957

+0

Не работает с: [[(u'hello ',), (u'hello',)], [(u'hello ',)]] Должно возвращаться [[' [email protected] ", привет @ hello.com], ['[email protected]']] – user1881957

Смежные вопросы