有人可以解释所有代码的含义吗?蟒蛇[关闭]

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 

【讨论】:

以上是关于有人可以解释所有代码的含义吗?蟒蛇[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

有人可以解释以下 R 代码片段吗? [关闭]

有人可以解释这个 PHP 代码吗? [关闭]

有人可以解释这段 JavaScript 代码吗

有人可以解释一下 C 中 signal() 语法的含义吗? [复制]

有人可以解释一下程序中以下两行的含义来实现管道吗?

有人可以像我五岁那样向我解释 chmod 权限吗? [关闭]