我想创建以下python列表:
[MIN_SPAN_1, MIN_SPAN_2, MIN_SPAN_3]
以下是我尝试过的代码:
numbers_list = [1, 2, 3]
for i in numbers_list:
print(('MIN_SPAN' + '_' + str(i)))
下面是结果输出,你可以看到不是我想要的:
MIN_SPAN_1
MIN_SPAN_2
MIN_SPAN_3
列表理解就像@Micheal一样。否则,如果你想以你的方式试试这个:(创建一个空列表并附加它)
numbers_list = [1, 2, 3]
new_list = []
for i in numbers_list:
new_list.append(('MIN_SPAN' + '_' + str(i)))
输出,
print(new_list)
>['MIN_SPAN_1', 'MIN_SPAN_2', 'MIN_SPAN_3']
你想做什么的:
newlist = ["MIN_SPAN_{}".format(entry) for entry in numbers_list]
这会使[“MIN_SPAN_1”,“MIN_SPAN_2”,“MIN_SPAN_3”]
或者您是否正在尝试打印阵列?
newlist = ["MIN_SPAN_{}".format(entry) for entry in numbers_list]
print(newlist)
打印输出:[“MIN_SPAN_1”,“MIN_SPAN_2”,“MIN_SPAN_3”]
只用一行就可以不用循环
numbers_list = [1, 2, 3]
print(list(map(lambda x:("MIN_SPAN_{}".format(x)),numbers_list)))
输出:
['MIN_SPAN_1', 'MIN_SPAN_2', 'MIN_SPAN_3']