1

list_test 中的 C1 和 C2 是客户 ID,所以我希望它们是唯一的。我希望 while 循环检测 C1 和 C2 已在 list_test 中使用。我希望下面的代码返回“C3”并将“C3”分配给变量名 new_customerid。

list_test = [['C1', 'James', 0, 100], ['C2', 'Lily', 0, 30]]

while True:
a = 0
for customer in list_test:
    if customer[0] == ('C'+str(a)):
        a += 1
        continue
    elif customer[0] != ('C'+str(a)):
        new_customerid += 'C'+str(a)
        print(new_customerid)
        break
4

1 回答 1

0

假设列表中没有间隙,您可以提取客户 ID 的数字部分,找到最大的一个,添加一个,然后将C字符添加回它。使用理解表达式,这甚至可以是单行的:

next_id = 'C' + str(max(int(c[0][1::]) for c in list_test) + 1)
于 2021-10-16T13:25:02.783 回答