本文详解如何仅用 python 的 `for` 循环(不使用索引切片或 `range()`)实现:先遍历字符串列表,再对每个字符串中的每个字符逐一访问并以空格分隔输出。
在 Python 中,字符串是可迭代对象,可直接用于 for 循环;同样,列表也是可迭代的。因此,要实现“对字符串列表中每个元素(人名)单独打印,再逐个打印该名字中每个字符(以空格分隔)”,最简洁、清晰且符合题意(仅用 for in)的方式是采用两层嵌套 for 循环:
- 外层循环遍历 people 列表,获取每个名字(如 ‘Vianney’);
- 内层循环遍历该名字字符串本身,每次迭代得到一个字符(如 ‘V’, ‘i’, ‘a’…);
- 使用 print(character, end=’ ‘) 实现字符间空格分隔;
- 每处理完一个名字后,调用 print() 换行,确保下一个人名从新行开始。
以下是完整可运行示例代码:
people = ['Vianney', 'Mariana', 'Ignacio', 'Gaspar']
for name in people:
print(name) # 单独输出完整姓名(自动换行)
for character in name:
print(character, end=' ') # 字符后接空格,不换行
print() # 手动换行,结束当前名字的字符输出
运行结果如下: