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 相关文章推荐
利用一个简单的例子窥探CPython内核的运行机制
Mar 30 Python
Python 专题一 函数的基础知识
Mar 16 Python
python利用Guetzli批量压缩图片
Mar 23 Python
python 用正则表达式筛选文本信息的实例
Jun 05 Python
Python使用Pickle库实现读写序列操作示例
Jun 15 Python
python实现跨excel sheet复制代码实例
Mar 03 Python
Pandas中DataFrame基本函数整理(小结)
Jul 20 Python
基于python实现图片转字符画代码实例
Sep 04 Python
装上这 14 个插件后,PyCharm 真的是无敌的存在
Jan 11 Python
Python之qq自动发消息的示例代码
Feb 18 Python
利用Opencv实现图片的油画特效实例
Feb 28 Python
Python torch.flatten()函数案例详解
Aug 30 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代码
2006/12/06 PHP
php array_intersect比array_diff快(附详细的使用说明)
2011/07/03 PHP
解析PHP函数array_flip()在重复数组元素删除中的作用
2013/06/27 PHP
php获取根域名方法汇总
2014/10/28 PHP
关于Yii中模型场景的一些简单介绍
2019/09/22 PHP
php装饰者模式简单应用案例分析
2019/10/23 PHP
js form 验证函数 当前比较流行的错误提示
2009/06/23 Javascript
Javascript笔记一 js以及json基础使用说明
2010/05/22 Javascript
javascript加号&quot;+&quot;的二义性说明
2013/03/04 Javascript
关于innerHTML后丢失动态绑定的EVENT问题解决方法
2013/05/19 Javascript
jQuery的css()方法用法实例
2014/12/24 Javascript
jquery 插件实现瀑布流图片展示实例
2015/04/03 Javascript
使用AngularJS创建自定义的过滤器的方法
2015/06/18 Javascript
使用Chrome浏览器调试AngularJS应用的方法
2015/06/18 Javascript
JavaScript基础知识点归纳(推荐)
2016/07/09 Javascript
chorme 浏览器记住密码后input黄色背景处理方法(两种)
2017/11/22 Javascript
NodeJS实现自定义流的方法
2018/08/01 NodeJs
微信小程序适配iphoneX的实现方法
2018/09/18 Javascript
jQuery实现动态添加和删除input框代码实例
2019/03/29 jQuery
详解微信小程序开发(项目从零开始)
2019/06/06 Javascript
vue实现购物车选择功能
2020/01/10 Javascript
简化Python的Django框架代码的一些示例
2015/04/20 Python
Python的pycurl包用法简介
2015/11/13 Python
python爬虫面试宝典(常见问题)
2018/03/02 Python
Django 浅谈根据配置生成SQL语句的问题
2018/05/29 Python
一百行python代码将图片转成字符画
2021/02/19 Python
pygame实现弹球游戏
2020/04/14 Python
Python实现文件压缩和解压的示例代码
2020/08/12 Python
专注澳大利亚特产和新西兰特产的澳洲中文网:0061澳洲制造
2019/03/24 全球购物
入党积极分子自我鉴定范文
2014/03/25 职场文书
诚实守信道德模范事迹材料
2014/08/15 职场文书
文体活动总结
2015/02/04 职场文书
入党函调证明材料
2015/06/19 职场文书
小学秋季运动会加油口号及加油稿
2019/08/19 职场文书
微信小程序 WeUI扩展组件库的入门教程
2022/04/21 Javascript
Linux服务器离线安装 nginx的详细步骤
2022/06/16 Servers