看海的猴 发表于 2020-8-20 09:59:55

for循环嵌套之打印金字塔

for循环嵌套之打印金字塔
# for i in range(1, 10, 2):
#   print('{0:^9}'.format('*' * i))

不理解上边整个解题思路,烦请大神详解...叩谢!尤其是{0:^9}

Twilight6 发表于 2020-8-20 10:13:57

本帖最后由 Twilight6 于 2020-8-20 10:18 编辑



因为金字塔每层都是增加 2 个 * 号的,所以 for 循环 range 时候步长设置为 2 ,也就是 1、3、5、7、9 这样的循环顺序

{0:^9} 这里的 0 表示的是位置参数,对应的是 format 后面的位置参数,这里即对应 '*'*i 这个字符串

这里 ^ 是居中作用, 9 代表着是居中 9 个 字符宽度,举个例子,看看结果:

>>> print('{:^50}'.format('鱼C论坛'))
                     鱼C论坛                     

这里打印的结果就是 居中且占 50 个字符位置了

看海的猴 发表于 2020-8-20 10:35:12

Twilight6 发表于 2020-8-20 10:13
因为金字塔每层都是增加 2 个 * 号的,所以 for 循环 range 时候步长设置为 2 ,也就是 1、3、5、7、9...

我还以为他用了位运算符
页: [1]
查看完整版本: for循环嵌套之打印金字塔