Python 用“*” 输出三角形的代码写法 您所在的位置:网站首页 用python画一个半圆加三角形的冰淇淋怎么画 Python 用“*” 输出三角形的代码写法

Python 用“*” 输出三角形的代码写法

2023-11-15 13:11| 来源: 网络整理| 查看: 265

 

Python 嵩天老师的第三课练习的第三题:

用代码写出“*”的三角形

答案应该只有2行代码:

#三角形输出 n = eval(input()) for i in range(1,n+1,2): print("{0:^{1}}".format("*" * i,n))

       

输入数字13,出来的

代码解析:

n = eval(input())

调用了eval()函数,评估函数,将字符串的最外面双引号打开,成为数字

for i in range(1,n+1,2): print("{0:^{1}}".format("*" * i,n))

最关键的就是槽的使用,内部的槽,确定了画“*”的个数,外部的槽{},以n确定了行宽,以最宽的一行作为每一行宽度

再进一步:如何输出菱形?

#三角形输出 #菱形输出 n = eval(input()) for i in range(1,n+1,2): print("{0:^{1}}".format("*" * i,n+1)) for i in range(n-1,1,-2): print("{0:^{1}}".format("*" * (i-1),n+1))

 三角形变为菱形,主要是再画一个倒三角形,然后底边比正的三角形少一行。

for i in range(n-1,1,-2): print("{0:^{1}}".format("*" * (i-1),n+1))

          

这是打印效果

加上的这两行意思和画正三角形差不多,主要就是注意 for in 的倒序。从大到小,前后颠倒一下即可,步长则改为-2。

打印的时候,从 for in 改成 n-2,也可以。

for i in range(n-2,1,-2): print("{0:^{1}}".format("*" * (i),n+1))

这样后续的 print 函数打印,就可以直接从 i 开始。

打印有问题,因为这样的话,1 是不包括的。

会出来这样的图案:

         

最后一行不是 * ,所以再次修改代码,将 1 改为 0 ,测试。

#菱形输出 n = eval(input()) for i in range(1,n+1,2): print("{0:^{1}}".format("*" * i,n+1)) for i in range(n-2,0,-2): print("{0:^{1}}".format("*" * (i),n+1))

最终输出的结果:

完美。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有