利用python打印出菱形、三角形以及矩形的方法实例


Posted in Python onAugust 08, 2017

前言

本文主要给大家介绍了关于利用python打印出菱形、三角形以及矩形的相关内容,分享出来供大家参考学习,话不多说,来一起看看详细的介绍:

实例代码

#coding:utf-8
rows = int(raw_input('输入列数: '))
i = j = k = 1 #声明变量,i用于控制外层循环(图形行数),j用于控制空格的个数,k用于控制*的个数
#等腰直角三角形1
print "等腰直角三角形1"
for i in range(0, rows):
 for k in range(0, rows - i):
  print " * ", #注意这里的",",一定不能省略,可以起到不换行的作用
  k += 1
 i += 1
 print "\n"
 
#打印实心等边三角形
print "打印空心等边三角形,这里去掉if-else条件判断就是实心的"
for i in range(0, rows + 1):#变量i控制行数
 for j in range(0, rows - i):#(1,rows-i)
  print " ",
  j += 1
 for k in range(0, 2 * i - 1):#(1,2*i)
  if k == 0 or k == 2 * i - 2 or i == rows:
   if i == rows:
    if k % 2 == 0:#因为第一个数是从0开始的,所以要是偶数打印*,奇数打印空格
     print "*",
    else:
     print " ", #注意这里的",",一定不能省略,可以起到不换行的作用
   else:
    print "*",
  else:
   print " ",
  k += 1
 print "\n"
 i += 1
 
#打印菱形
print "打印空心等菱形,这里去掉if-else条件判断就是实心的"
for i in range(rows):#变量i控制行数
 for j in range(rows - i):#(1,rows-i)
  print " ",
  j += 1
 for k in range(2 * i - 1):#(1,2*i)
  if k == 0 or k == 2 * i - 2:
   print "*",
  else:
   print " ",
  k += 1
 print "\n"
 i += 1
 #菱形的下半部分
for i in range(rows):
 for j in range(i):#(1,rows-i)
  print " ",
  j += 1
 for k in range(2 * (rows - i) - 1):#(1,2*i)
  if k == 0 or k == 2 * (rows - i) - 2:
   print "*",
  else:
   print " ",
  k += 1
 print "\n"
 i += 1
#实心正方形
print "实心正方形"
for i in range(0, rows):
 for k in range(0, rows):
  print " * ", #注意这里的",",一定不能省略,可以起到不换行的作用
  k += 1
 i += 1
 print "\n"
 
#空心正方形
print "空心正方形"
for i in range(0, rows):
 for k in range(0, rows):
  if i != 0 and i != rows - 1:
   if k == 0 or k == rows - 1:
    #由于视觉效果看起来更像正方形,所以这里*两侧加了空格,增大距离
    print " * ", #注意这里的",",一定不能省略,可以起到不换行的作用
   else:
     print " ", #该处有三个空格
  else:
   print " * ", #这里*两侧加了空格
  k += 1
 i += 1
 print "\n"

执行输出结果:

输入列数: 4
等腰直角三角形1
 * * * * 

 * * * 

 * * 

 * 

打印空心等边三角形,这里去掉if-else条件判断就是实心的
  

  * 

 * * 

 *  * 

* * * * 

打印空心等菱形,这里去掉if-else条件判断就是实心的
  

  * 

 * * 

 *  * 

*   * 

 *  * 

 * * 

  * 

实心正方形
 * * * * 

 * * * * 

 * * * * 

 * * * * 

空心正方形
 * * * * 

 *   * 

 *   * 

 * * * *

总结

好了,以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python中定义结构体的方法
Mar 04 Python
python中sys.argv参数用法实例分析
May 20 Python
python基于multiprocessing的多进程创建方法
Jun 04 Python
Python爬虫获取整个站点中的所有外部链接代码示例
Dec 26 Python
python遍历文件夹下所有excel文件
Jan 03 Python
python 创建一个空dataframe 然后添加行数据的实例
Jun 07 Python
pygame实现贪吃蛇游戏(下)
Oct 29 Python
Python3.5 win10环境下导入kera/tensorflow报错的解决方法
Dec 19 Python
python如何爬取动态网站
Sep 09 Python
python对批量WAV音频进行等长分割的方法实现
Sep 25 Python
Python实现迪杰斯特拉算法并生成最短路径的示例代码
Dec 01 Python
pandas将list数据拆分成行或列的实现
Dec 13 Python
Python正则表达式非贪婪、多行匹配功能示例
Aug 08 #Python
关于Python 3中print函数的换行详解
Aug 08 #Python
Python tkinter模块中类继承的三种方式分析
Aug 08 #Python
Python实现注册登录系统
Aug 08 #Python
Python实现读取TXT文件数据并存进内置数据库SQLite3的方法
Aug 08 #Python
Python3 适合初学者学习的银行账户登录系统实例
Aug 08 #Python
Python初学时购物车程序练习实例(推荐)
Aug 08 #Python
You might like
世界收音机发展史
2021/03/01 无线电
抓取YAHOO股票报价的类
2009/05/15 PHP
PHP函数学习之PHP函数点评
2012/07/05 PHP
php遍历目录与文件夹的多种方法详解
2013/11/14 PHP
PHP面试常用算法(推荐)
2016/07/22 PHP
让ThinkPHP的模板引擎达到最佳效率的方法详解
2017/03/14 PHP
HR vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
JavaScipt基本教程之JavaScript语言的基础
2008/01/16 Javascript
Package.js  现代化的JavaScript项目make工具
2012/05/23 Javascript
js检查页面上有无重复id的实现代码
2013/07/17 Javascript
js实现简单登录功能的实例代码
2013/11/09 Javascript
JS实现的Select三级下拉菜单代码
2015/08/20 Javascript
JS简单实现无缝滚动效果实例
2016/08/24 Javascript
解决jQuery ajax动态新增节点无法触发点击事件的问题
2017/05/24 jQuery
js获取文件里面的所有文件名(实例)
2017/10/17 Javascript
javascript面向对象三大特征之封装实例详解
2019/07/24 Javascript
Vue中jsx不完全应用指南小结
2019/11/01 Javascript
Python数据结构之翻转链表
2017/02/25 Python
Python 等分切分数据及规则命名的实例代码
2019/08/16 Python
python3列表删除大量重复元素remove()方法的问题详解
2021/01/04 Python
使用CSS禁止textarea调整大小功能的方法
2015/03/13 HTML / CSS
五分钟学会HTML5的WebSocket协议
2019/11/22 HTML / CSS
国外的一些J2EE面试题一
2012/10/13 面试题
社会保险接收函
2014/01/12 职场文书
公证委托书大全
2014/04/04 职场文书
请假条怎么写
2014/04/10 职场文书
公司口号大全
2014/06/11 职场文书
中秋节国旗下演讲稿
2014/09/05 职场文书
车辆转让协议书
2014/09/24 职场文书
个人年度总结报告
2015/03/09 职场文书
2015年学校工作总结范文
2015/04/20 职场文书
HR在给员工开具离职证明时,需要注意哪些问题?
2019/07/03 职场文书
GoLang中生成UUID唯一标识的实现
2021/05/08 Golang
Pytorch 实现变量类型转换
2021/05/17 Python
Prometheus 监控MySQL使用grafana展示
2021/08/30 MySQL
Vue如何清空对象
2022/03/03 Vue.js