我正在做以下任务。 迭代列表的列表。 将每个内部列表转换为一个对象,并将它们添加到一个批中,以插入cassandra。跟踪该批产品的数量不超过150项。你知道吗
s = session.prepare("INSERT INTO {} (a, b, c) VALUES (?, ?, ?)".format(table))
batch = BatchStatement(consistency_level=ConsistencyLevel.QUORUM)
count = 0
for lst in list:
for i in lst:
if count == 150:
magic = Magic(i[0], i[1], content_id)
batch.add(s, (magic.a, magic.b, magic.c))
session.execute(batch)
batch = BatchStatement(consistency_level=ConsistencyLevel.QUORUM)
count = 0
else:
for i in lst:
magic = Magic(i[0], i[1], content_id)
batch.add(s, (magic.a, magic.b, magic.c))
count += 1
session.execute(batch)
外部列表有未指定数量的项,但内部列表始终有两个项。你知道吗
这段代码非常冗长。有没有一个更像Python的方法来做到这一点。你知道吗
我将公共代码移出了
if
块:我还删除了看起来不必要的第二个
for
循环。您可能希望在最后一次调用session.execute
之前添加对count == 0
的检查。你知道吗警告
永远不要使用} 是一个内置类。你知道吗
list
作为变量名。^{相关问题 更多 >
编程相关推荐