有人可以解释所有代码的含义吗?蟒蛇[关闭]
Posted
技术标签:
【中文标题】有人可以解释所有代码的含义吗?蟒蛇[关闭]【英文标题】:Can someone explain what all the codes mean? PYTHON [closed] 【发布时间】:2015-12-17 13:38:19 【问题描述】: i = 10
while i > 0:
print i*'*' + 2*(10-i)*' ' + i*'*'
i -= 1
for x in range(2,11):
print x* '*' + 2*(10-x)*' '+ x*'*'
x += 1
谁能告诉我每一行的作用?
【问题讨论】:
【参考方案1】:我会保持非常简单,因为这是非常基本的东西。
i = 10
变量i
被初始化为10。
while i > 0:
print i*'*' + 2*(10-i)*' ' + i*'*'
i -= 1
当变量 i
大于 0 时,它会打印字符串 *
i
次,空格 2 * (10 - i)
次,然后再次打印字符串 *
i
次。每个循环它都会从 i
中减去 1,因此 i
以 10 开始并一直下降到 1。这会产生以下三角形/金字塔:
********************
********* *********
******** ********
******* *******
****** ******
***** *****
**** ****
*** ***
** **
* *
for x in range(2,11):
print x* '*' + 2*(10-x)*' '+ x*'*'
x += 1
这里的变量 x
从 2 开始并一直递增到 10,这导致上述三角形的倒置版本(不完全是,但如果您使用 range(1, 11)
代替,则会出现这种情况)。 x += 1
在这里也是多余的,因为 range
函数已经以 1 的步长递增 x
(因为省略了 step 参数)。您可以通过运行以下代码自己查看:
for x in range(1, 11):
print x
【讨论】:
以上是关于有人可以解释所有代码的含义吗?蟒蛇[关闭]的主要内容,如果未能解决你的问题,请参考以下文章