输出字母金字塔的程序
为了输出结果
A
A B
A B C
A B C D
A B C D E
我用了下面的代码,但它运行得不太对。
strg = "A B C D E F"
i = 0
while i < len(strg):
print strg[0:i+1]
print "\n"
i = i + 1
这个代码得到的输出是:
A
A
A B
A B
A B C
A B C
A B C D
A B C D
A B C D E
A B C D E
A B C D E F
为什么每一行都打印了两次?
1 个回答
2
空白字符。你需要把 i
增加 2,而不是 1。试试这个:
strg = "A B C D E F"
i = 0
while i < len(strg):
print strg[0:i+2]
print "\n"
i = i+2
这样可以让你跳过字符串中的空白部分
更符合 Python 风格的写法:
>>> strg = "ABCDEF"
>>> for index,_ in enumerate(strg):
print " ".join(strg[:index+1])
A
A B
A B C
A B C D
A B C D E
A B C D E F