我想尝试这个循环,但它说不可能。我怎样才能创建这些循环?
for i in range (sposA,sposB) and for j in range(eposB+1,sposB,-1):
if tempstr[i] == ctempstr[j]:
pcount += 1
答案 0 :(得分:1)
在基本上任何语言中,这样的结构都是模棱两可的。您是否尝试在两个维度中循环(如果每个索引列表为x
且y
为长,您是否正在进行x
* y
事情?)或并行(是索引长度相同,例如x
,并配对,所以你只做x
件事。)。
如果你想循环二维,你只需嵌套循环:
for i in range(x):
for j in range(y):
doStuff(i, j)
如果它们是并行的,您可以在它们之间创建一些功能依赖,这样您就可以将索引i
转换为索引j
,或者组合指标:
for i in range(x):
j = f(i)
doStuff(i, j)
或
for i, j in zip(range(x), range(y)):
doStuff(i, j)
上面的内容是Python-pseudocode,但控制结构广泛适用于任何命令式语言(C,Python,Java ......)。