从“循环”转换为“循环”

从“循环”转换为“循环”,第1张

从“循环”转换为“循环”

您忘记了

people
再次索引;您只打印索引。您还希望遍历 所有 条目,
people
而不仅仅是第一个子列表中的名称:

def print_names2(people):    i = 0 while i < len(people):        print(people[i])        i += 1

这仅循环 外部 列表。如果要循环访问内部子列表,请添加第二个

while
循环:

def print_names2(people):    i = 0 while i < len(people):        j = 0        while j < len(people[i]) print(people[i][j]) j += 1        i += 1

所有这些都 直接
打印名称,所有名称将以换行结尾,而不是每个子列表以空格隔开的形式打印在每个子列表上。如果需要复制字符串构建,请这样做,直到内部

while
循环结束后才打印:

def print_names2(people):    i = 0 while i < len(people):        to_print = ""        j = 0        while j < len(people[i]) to_print += people[i][j] + " " j += 1        print(to_print)        i += 1

现在,这与带有

for
循环的原始版本最接近。

替代版本可以创建列表的副本,然后从这些列表中 删除项目 ,直到它们为空:

def print_names2(people):    i = 0 while i < len(people):        person = list(people[i])        to_print = ""        while person: name = person.pop(0) to_print += name + " "        print(to_print)        i += 1

我使用索引离开了外循环。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5655679.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存