python 打印直角三角形,等边三角形,菱形,正方形的代码


Posted in Python onNovember 21, 2017

三角形

等腰直角三角形1 2.7

#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"

python:打印直角三角形

coding=utf-8

方式一

i = 1
while i <= 5:
  j = 1
  while j <=i:
    print '*',
    j+=1
  print '\n'
  i+=1

方式二

for i in range(1, 6):
  for j in range(1, i+1):
    print "*",
  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"

知识点说明:

python ,end=''备注

就是打印之后不换行。在Python2.7中使用“,”
下面是2.7的例子:
def test():
print 'hello',
print 'world'

在python3中'end='意思是不换行

python打印翻转三角形

一.编写函数如上模式。

提示用户输入一个数n,然后调用displayPattern(n)来显示这种模式。

def displayPattern(n):
 dict = {}
 for i in range(0, int(n)): 
  '''
  int(i)+ 2:左闭右开 
   eg: n = 3,
    i = 0,打印[1] i = 1,打印[1,2]...
  str(j)[::-1] : 单个字符串反转 eg:12 ===>21
  键值对形式,添加到字典里面
  '''
  dict[i] = [str(j)[::-1] for j in range(1,int(i)+ 2)]
 listNum = []
 # print(dict)
 for key,value in dict.items():
  '''
  {0: ['1'], 1: ['1', '2'], 2: ['1', '2', '3'],3: ['1', '2', '3', '4'],
  循环取出字典中的value(对应的列表)
  去除[],(将逗号,替换成空格, 将单引号'替换成空)===>添加到list列表
  '''
  value = str(value).strip('[]').replace(',','\t').replace("'",'')
  listNum.append(value)
  # print(value)
 for k in range(0,int(n)):
  '''
  "\t" * %s : 空格*字符串的形式
   % (int(n) - int(k) - 1))))[::-1] : %:格式化标志 int(n) - int(k) - 1:求有多少空格
  '''
  listNum[k] = (listNum[k] + (eval('"\t" * %s' % (int(n) - int(k) - 1))))[::-1]
  print(listNum[k])
 # print(dict)
 # print(listNum)
 
num = int(input("请输入一个数:"))
# 调用函数
displayPattern(num)
Python 相关文章推荐
python实现从web抓取文档的方法
Sep 26 Python
Python字符串处理之count()方法的使用
May 18 Python
Python中列表和元组的相关语句和方法讲解
Aug 20 Python
Python实现注册、登录小程序功能
Sep 21 Python
利用Python求阴影部分的面积实例代码
Dec 05 Python
python最小生成树kruskal与prim算法详解
Jan 17 Python
Python实现计算字符串中出现次数最多的字符示例
Jan 21 Python
Python检查 云备份进程是否正常运行代码实例
Aug 22 Python
Python实现Wordcloud生成词云图的示例
Mar 30 Python
openCV提取图像中的矩形区域
Jul 21 Python
scrapy结合selenium解析动态页面的实现
Sep 28 Python
python中Matplotlib绘制直线的实例代码
Jul 04 Python
pycharm远程调试openstack代码
Nov 21 #Python
Pycharm远程调试openstack的方法
Nov 21 #Python
pycharm远程调试openstack的图文教程
Nov 21 #Python
Python实现的归并排序算法示例
Nov 21 #Python
Python实现打印螺旋矩阵功能的方法
Nov 21 #Python
Python中矩阵库Numpy基本操作详解
Nov 21 #Python
python GUI实例学习
Nov 21 #Python
You might like
也谈 PHP 和 MYSQL
2006/10/09 PHP
flash用php连接数据库的代码
2011/04/21 PHP
CodeIgniter基本配置详细介绍
2013/11/12 PHP
CentOS安装php v8js教程
2015/02/26 PHP
PHP结合Ueditor并修改图片上传路径
2016/10/16 PHP
php技巧小结【推荐】
2017/01/19 PHP
Fastest way to build an HTML string(拼装html字符串的最快方法)
2011/08/20 Javascript
TextArea不支持maxlength的解决办法(jquery)
2011/09/13 Javascript
Json2Template.js 基于jquery的插件 绑定JavaScript对象到Html模板中
2011/10/29 Javascript
查看图片(前进后退)功能实现js代码
2013/04/24 Javascript
js函数返回多个返回值的示例代码
2013/11/05 Javascript
jQuery实现商品活动倒计时
2015/10/16 Javascript
由简入繁实现Jquery树状结构的方法(推荐)
2016/06/10 Javascript
vuejs使用递归组件实现树形目录的方法
2017/09/30 Javascript
基于Vue的ajax公共方法(详解)
2018/01/20 Javascript
Node.js中,在cmd界面,进入退出Node.js运行环境的方法
2018/05/12 Javascript
React 使用browserHistory项目访问404问题解决
2018/06/01 Javascript
Vant的安装和配合引入Vue.js项目里的方法步骤
2018/12/05 Javascript
jQuery - AJAX load() 实例用法详解
2019/08/27 jQuery
vue+canvas实现拼图小游戏
2020/09/18 Javascript
[02:05]2014DOTA2西雅图邀请赛 专访啸天mik夫妻档
2014/07/08 DOTA
Python中防止sql注入的方法详解
2017/02/25 Python
python 3.0 模拟用户登录功能并实现三次错误锁定
2017/11/01 Python
python简单实例训练(21~30)
2017/11/15 Python
python中的插值 scipy-interp的实现代码
2018/07/23 Python
Python递归函数实例讲解
2019/02/27 Python
Django vue前后端分离整合过程解析
2020/11/20 Python
python二维图制作的实例代码
2020/12/03 Python
html5使用canvas实现跟随光标跳动的火焰效果
2014/01/07 HTML / CSS
俄罗斯香水和化妆品网上商店:NOTINO.ru
2019/12/17 全球购物
竞聘上岗演讲稿范文
2014/01/10 职场文书
《乡下孩子》教学反思
2014/04/17 职场文书
实践单位评语
2014/04/26 职场文书
重大事项社会稳定风险评估方案
2014/06/15 职场文书
我的梦想演讲稿500字
2014/08/21 职场文书
python使用PySimpleGUI设置进度条及控件使用
2021/06/10 Python