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将ansible配置转为json格式实例代码
May 15 Python
Python实现破解猜数游戏算法示例
Sep 25 Python
python实现BackPropagation算法
Dec 14 Python
Python应用库大全总结
May 30 Python
python 列表递归求和、计数、求最大元素的实例
Nov 28 Python
使用python 打开文件并做匹配处理的实例
Jan 02 Python
Pytorch中实现只导入部分模型参数的方式
Jan 02 Python
python实现3D地图可视化
Mar 25 Python
pyspark 随机森林的实现
Apr 24 Python
python 6行代码制作月历生成器
Sep 18 Python
Django REST Framework 分页(Pagination)详解
Nov 30 Python
Golang Web 框架Iris安装部署
Aug 14 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 获取可变函数参数的函数
2009/08/26 PHP
深入理解require与require_once与include以及include_once的区别
2013/06/05 PHP
基于simple_html_dom的使用小结
2013/07/01 PHP
PHP处理JSON字符串key缺少双引号的解决方法
2014/09/16 PHP
C/S和B/S两种架构区别与优缺点分析
2014/10/23 PHP
基于PHP实现简单的随机抽奖小程序
2016/01/05 PHP
ThinkPHP5.1表单令牌Token失效问题的解决
2019/03/22 PHP
Thinkphp 框架配置操作之动态配置、扩展配置及批量配置实例分析
2020/05/15 PHP
javascript 火狐(firefox)不显示本地图片问题解决
2008/07/05 Javascript
jquery ajax方式直接提交整个表单核心代码
2013/08/15 Javascript
document.forms[].submit()使用介绍
2014/02/19 Javascript
详谈JavaScript 匿名函数及闭包
2014/11/14 Javascript
JQuery移动页面开发之屏幕方向改变与滚屏的实现
2015/12/03 Javascript
JS获取IMG图片高宽的简单实例
2016/05/17 Javascript
AngularJS中$http服务常用的应用及参数
2016/08/22 Javascript
使用开源工具制作网页验证码的方法
2016/10/17 Javascript
javascript实现将数字转成千分位的方法小结【5种方式】
2016/12/11 Javascript
vue基于Vue2.0和高德地图的地图组件实例
2017/04/28 Javascript
微信小程序之发送短信倒计时功能
2017/08/30 Javascript
原生js实现的金山打字小游戏(实例代码详解)
2020/03/16 Javascript
[02:47]3.19DOTA2发布会 国服成长历程回顾
2014/03/25 DOTA
Python3中exp()函数用法分析
2019/02/19 Python
使用Keras建立模型并训练等一系列操作方式
2020/07/02 Python
python实现录音功能(可随时停止录音)
2020/10/26 Python
Probikekit欧盟:在线公路自行车专家
2019/07/12 全球购物
北京某公司的.net笔试题
2014/03/20 面试题
linux面试题参考答案(7)
2014/07/24 面试题
How to spawning asynchronous work in J2EE
2016/08/29 面试题
专科毕业生自我鉴定
2013/12/01 职场文书
致跳远运动员加油稿
2014/02/11 职场文书
2014年教学工作总结
2014/11/13 职场文书
2014年学校团委工作总结
2014/12/20 职场文书
独生子女证明范本
2015/06/19 职场文书
导游词之临安白水涧
2019/11/05 职场文书
导游词之西安骊山
2019/12/03 职场文书
iOS 16进一步确认,一共支持16款iPhone
2022/04/28 数码科技