<p>我正在尝试创建一个程序,在其中输入一个数字,程序将创建一个“+”的“christmastree”排列。例如,如果我输入数字5,程序将打印:</p>
<pre><code> +
+++
+++++
+++++++
+++++++++
</code></pre>
<p>到目前为止我得到的是:</p>
<pre><code>def holidaybush(n):
z=n-1
x=1
for i in range(0,n):
for i in range(0,z):
print('',end='')
for i in range(0,x):
print('+',end='')
for i in range(0,z):
print('',end='')
x=x*2
x=x-1
z=z-1
print()
holidaybush(5)
</code></pre>
<p>它并不像我所期望的那样工作,即使我经过逻辑,它似乎在我的头脑中工作。有什么帮助吗?我今天刚学会了循环,所以我可能不知道关于它们的一切。</p>
<p>您可以使用<code>string.center()</code>,只是为了添加另一个解决方案,这使代码更加紧凑:</p>
<pre><code>def holidaybush(n):
for i in range(n):
print(("+" * (i * 2 + 1)).center(n * 2 - 1))
holidaybush(5)
</code></pre>