Python实现字符串按字母位置重复换行输出
任务要求
1.输入字符串固定为"python"
2.每个字母换行输出,重复次数等于该字母在字符串中的位置编号(从1开始计数)
3.输出示例:
p
yy
ttt
hhhh
ooooo
nnnnnn
任务分析
1.遍历字符串:需逐个处理字符,获取其位置编号
2.位置计算:索引从1开始(如第一个字符'p'位置为1,重复1次)
3.字符重复:利用字符串乘法特性(字符 * 次数)
4.换行输出:每次循环结束后换行
任务实现
方法1:基础循环索引法
s = "python"
for i in range(len(s)):
print(s[i] * (i + 1))
说明:
- range(len(s))生成索引i(0-5),i+1实现位置从1开始计数
- s[i]获取当前字符,*操作符重复字符
- 每轮循环自动换行
方法2:enumerate函数简化法
s = "python"
for idx, char in enumerate(s, start=1):
print(char * idx)
说明:
- enumerate(s, start=1)同时获取字符char和位置idx(1-6),无需手动计算索引
方法3:列表推导式高效法
s = "python"
result = '\n'.join([s[i] * (i+1) for i in range(len(s))])
print(result)
说明:
- 列表推导式生成每行字符串(如['p', 'yy', ...])
- '\n'.join()合并为完整字符串,一次性输出,减少I/O操作次
运行结果
p
yy
ttt
hhhh
ooooo
nnnnnn
进程已结束,退出代码为 0