python经典百题之打印楼梯

方法一:使用循环打印

思路:使用两个for循环,分别控制打印楼梯和笑脸的位置,其中,外层循环控制楼梯行数,内层循环控制每行打印的*号数。

代码:

复制代码
# 打印楼梯
for i in range(1, 6):
  print("*" * i)

# 打印笑脸
print("  **   **")
print(" *  * *  *")
print("*    *    *")
print("*         *")
print("*    *    *")
print(" *  * *  *")
print("  **   **")

方法二:使用递归打印

思路:使用递归函数,控制打印楼梯的行数和每行的*号数,打印完楼梯后再通过打印函数打印笑脸。

代码:

复制代码
# 定义递归函数打印楼梯
def print_stair(n):
  if n <= 0:
    return
  print_stair(n-1)
  print("*" * n)

# 打印楼梯
print_stair(5)

# 打印笑脸
def print_smile():
  print("  **   **")
  print(" *  * *  *")
  print("*    *    *")
  print("*         *")
  print("*    *    *")
  print(" *  * *  *")
  print("  **   **")

print_smile()

方法三:使用列表推导式打印

思路:使用列表推导式,控制打印楼梯的行数和每行的*号数,打印完楼梯后再通过打印函数打印笑脸。

代码:

复制代码
# 打印楼梯
stair_list = ["*" * i for i in range(1, 6)]
print("\n".join(stair_list))

# 打印笑脸
def print_smile():
  print("  **   **")
  print(" *  * *  *")
  print("*    *    *")
  print("*         *")
  print("*    *    *")
  print(" *  * *  *")
  print("  **   **")

print_smile()

当然应该还有更多的实现方法,本文只是提供一个思路,希望大家集思广益

相关推荐
ZhengEnCi6 分钟前
AI Agent工具调用防护层怎么写-一份能直接跑的Python四层拦截实现
python·llm·agent
ZhengEnCi27 分钟前
AI Agent工具误调用怎么解决-从参数校验到高危二次确认的四层工程防线
python·llm·agent
镜子AI2 小时前
镜子AI工程教程:用Python实现关键词布局检查器与语义改写查重(附完整代码)
人工智能·python·microsoft
小oo呆3 小时前
【学习心得】Python协程
python
信誓旦旦的程序猿3 小时前
【Python量化实战宝典 #22】涨跌停、连板情绪手册:情绪指标构建(Python 可跑)
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口
gCode Teacher 格码致知3 小时前
Pandas教学-21:subplots的使用
python·pandas·1024程序员节
2601_967980113 小时前
Python开发的顶级开源项目全景图:2025-2026年生态概览
python·机器学习·开源项目·数据科学·生态概览
小成202303202654 小时前
C++~07补充
开发语言·c++
benchmark_cc4 小时前
量化开发中,什么时候应该停止手动下载股票数据?
python·数据分析·pandas·量化交易·1024程序员节·股票数据·quantdash
泡茶喝茶写代码4 小时前
A股量化策略回测实战:从行情数据到绩效评估(第 15 篇):新高新低策略
python·1024程序员节·股票数据api·股票数据api接口·股票api数据接口·股票量化数据api·股票量化数据接口