如何使用迭代循环创建如下所示的列表?
col_head =['mfcc_delta_1', 'mfcc_delta_2', 'mfcc_delta_3']
到目前为止,我一直在尝试这种迭代。但这不正确。
['mfcc_delta_{%d}'.format(i) for i in range(0,13)]
答案 0 :(得分:3)
你可以简单地做
col_head =['mfcc_delta_{}'.format(num) for num in range(13)]
答案 1 :(得分:2)
您可以在python中使用 range 方法创建一个int范围,然后对其进行迭代以创建所需的结果。
示例:强>
#col_head =['mfcc_delta_1', 'mfcc_delta_2', 'mfcc_delta_3']
col_head = []
for i in range(1, 10):
col_head.append('mfcc_delta_{0}'.format(i))
print col_head
<强>输出:强>
['mfcc_delta_1', 'mfcc_delta_2', 'mfcc_delta_3', 'mfcc_delta_4', 'mfcc_delta_5', 'mfcc_delta_6', 'mfcc_delta_7', 'mfcc_delta_8', 'mfcc_delta_9']
答案 2 :(得分:2)
这是一种方式,我想你可以试试:
public class A {
private final B b;
public A(B b) {
this.b = b;
}
public int fun() {
return b.b();
}
}
public interface B {
int b();
}
public class Testfun() {
public void test(){
B b = new B {
public int b() {
return 1;
}
};
A a = new A(b);
assertEquals(1, a.fun());
}
}
它将返回如下内容:
col_head =['mfcc_delta_{}'.format(i) for i in range(1, 5)]
print(col_head)
答案 3 :(得分:1)
假设您要添加5个元素。
col_head = []
for i in range(1, 6):
col_head.append("mfcc_delta_"+str(i))
print col_head
答案 4 :(得分:1)
你可以试试这个:
columns_test = []
for i in range(0,13):
columns_test.append('delta_mfcc_'+str(i))
希望会有所帮助。