python打印星号三角形图案 |
您所在的位置:网站首页 › 用图形绘制图案 › python打印星号三角形图案 |
python打印星号三角形图案
1.打印一个左下三角图形
# 输出结果
*
**
***
****
*****
******
*******
********
代码实现: # 输入行数,打印一个左下三角图形 def triangle(row): mystring = '*' for i in range(row): for j in range(i+1): print('*',end='') print('') row = int(input()) triangle(row)这个可以说是非常简单了,就是两层循环,一层控制行,另一层控制*的个数,很容易就可以输出一个下三角。 2.打印一个右下三角图形 # 输出结果 * ** *** **** ***** ****** ******* ********代码实现: # 输入行数,打印一个右下三角图形 def triangle(row): mystring = '*' for i in range(row):#行数 print((mystring*(i+1)).rjust(row)) row = int(input()) triangle(row)这里其实也可以用前面的方法实现,不过我觉得有点麻烦了,所以直接使用了python的一个内置函数rjust即让字符串右对齐,设置好字符串以后直接用倍数重复输出*号就可以了,因为i在range函数中是从0开始,所以+1就好了。 因为要打印的右下三角的最后一行的星号个数刚好就是行数,所以rjust右边括号里的宽度就填上行数row了。 3.打印一个等腰三角形 # 输出结果 * *** ***** ******* ********* *********** ************* ***************代码实现: # 输入行数,打印一个等腰三角形 def triangle(row): mystring = '*' for i in range(row): print((mystring*(1+2*i)).rjust(row+i)) row = int(input()) triangle(row)这个的话,我原本打算的是跟第二题一样,然后直接把str.rjust()换成str.center()函数就愉快地结束,结果图形是出来了,万万没想到差就差在她的这个图案的右边是没有空格的。。。而一看我的,一堆空格。。。 最后也很简单,直接还是用回rjust,每一行的右边多打印i个星号,简单了事。 小小菜鸡刚开始学python,如有不对敬请谅解,同时也欢迎指出我的错误,谢谢 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |