python3 题解(10)打印金字塔1

本文介绍如何在控制台使用Python3打印出金字塔形状。主要思路有两种:一是通过替换星号和空格来构造每一行;二是利用字符串的replace方法和切片操作,以及字符串的center方法进行居中对齐。这两种方法都避免了精确计算空格数量的复杂性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

打印金字塔1

【问题】用星号在控制台上输出一个金字塔的形状。

          *
         ***
        *****
       *******
      *********
     ***********
    *************
   ***************
  *****************
 *******************

可以看出,它的第n行的星号的个数是:2*n-1
这个问题的思路可以很多。
比如,先造出指定数目的星号,再计算出前后补的空格数。

这里采用如下的思路:
已知了n,最后一行的星号的数目就固定了,并且没有任何空格。
然后考虑:每一行的上一行,都是把本行的第一个星号变成空格,最后一个星号变成空格就行了。

要用到两个技巧:

  1. replace 替换的时候,要指定只替换第一个遇到的。
  2. 把一个串变成它的反串的方法是:s[::-1]
def stars(n):
	r =</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值