本文讲解如何用纯 `for` 循环(不使用切片、索引或额外库)遍历字符串列表,并对每个名字中的每个字符单独打印,实现“名字换行 + 字符空格分隔”的清晰输出格式。
在 Python 中,字符串是可迭代对象,因此可以直接用 for char in name: 遍历其每个字符,无需手动维护索引或进行复杂比较。原代码中混用了变量名 name(外层循环变量)和内层循环逻辑,导致变量覆盖、索引错乱及条件判断失效(如 name[index]
正确的做法是保持语义清晰:外层循环遍历人名列表,内层循环遍历当前人名的每一个字符。以下是简洁、健壮、符合题意的实现:
people = ['Vianney', 'Mariana', 'Ignacio', 'Gaspar']
for name in people:
print(name) # 打印完整姓名,独占一行
for char in name:
print(char, end=' ') # 每个字符后接空格,不换行
print() # 内层循环结束后换行,分隔不同人名的字符序列
运行结果: