Форум сайта python.su
Здравствуйте! Подскажите сабж на выходе должна быть такая строка:
'freq_1,freq_2,freq_3,freq_4,freq_5,freq_6,freq_7,freq_8,freq_9,freq_10'
Строка ‘freq_’ берётся из переменной s. Индексы (1,2,3,…) - n индексов от a ( т.е. a,a+1,a+2,…,a+(n-1) ).
Можно ли это сделать в одной строке?
Заранее спасибо.
Офлайн
Как обычно, как только спросил - тут же придумал =)
Вот так получилось:
s='freq' a=1 n=10 ','.join(s+str(a) for a in xrange(n,n+a))
Офлайн
print(','.join(['freq_'+str(x) for x in range(0,10)]))
Отредактировано alekzp (Фев. 16, 2013 18:17:10)
Офлайн
kt368
ну не считая того что ваш собственный вариант не совпадает с заданием, то все нормально. честно. Ну или вот так вот:
>>> ','.join('{}_{}'.format(s,x) for x in xrange(a, n+a)) 'freq_1,freq_2,freq_3,freq_4,freq_5,freq_6,freq_7,freq_8,freq_9,freq_10'
Офлайн