2015-03-03 2 views
2

Я очень новичок в Python, и я пытаюсь объединить элементы из двух списков и создать строку из этой комбинации.Как добавить два нечетных списка в один список в python?

Мои переменные:

fro = ['USD'] 
to = ['AUD', 'CAD', 'EUR'] 

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

pairs = "USDAUD,USDCAD,USDEUR" 

Благодаря тонну заранее за вашу помощь.

ответ

-1

Elizion является абсолютно правильным.

Если у вас есть список элементов изменяется динамически, вы можете использовать эту строку:

абсолютно вещий путь !!

pair_elem = ','.join('%s%s' % (x, y) for y in to for x in fro) 

И обычный способ, как, итерация список elems:

for multiple in to: 
    for single in fro: 
     pairs = ",".join(single + multiple) 
6

Почему бы не использовать generator expression так:

fro = ['USD'] 
to = ['AUD', 'CAD', 'EUR'] 
pairs = ','.join(fro[0] + x for x in to) 

Обратите внимание, что from зарезервированное ключевое слово и, таким образом, не является допустимым именем переменной.

Выход:

>>>pairs 
'USDAUD,USDCAD,USDEUR' 

Если вы были когда-нибудь интересно, является ли то, что вы хотите использовать в качестве имени переменной является ключевым словом (и, таким образом, нелегальный имя переменной) или нет, вы всегда можете проверить что-то вроде этого:

>>> import keyword 
>>> keyword.iskeyword("from") 
True 
0

ответ Elizion является красивым и лаконичным, но, как новичок вы можете провер тренере без использования промежуточной/продвинутой структуры как генератор:

fro = ['USD'] 
to = ['AUD', 'CAD', 'EUR'] 

pairs = "" 

for word in to: 
    pairs += fro[0] + word + "," 

Удаления Запятой:

pairs = pairs[:-1]