【发布时间】:2018-01-28 14:18:34
【问题描述】:
我想创建像 A1、B2、C3 和 D4 这样的名称
batches = zip('ABCD', range(1, 5))
for i in batches:
batch = i[0] + str(i[1])
print(batch)
这会产生预期的输出:
A1
B2
C3
D4
但是,如果我将一个列表 batch_list 初始化为空并将每个批次添加到其中,如下所示:
batch_list = []
batches = zip('ABCD', range(1, 5))
for i in batches:
batch_list += i[0] + str(i[1])
print(batch_list)
输出如下:
['A', '1', 'B', '2', 'C', '3', 'D', '4']
为什么不呢?
['A1', 'B2', 'C3', 'D4']
【问题讨论】:
-
您的扩展列表没有附加到它。
-
如果你使用
batch_list = [ch + str(n) for ch, n in zip('ABCD', range(1, 5))],代码会变得更清晰,更少混乱
标签: python string algorithm list iterator