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实现合并字典的方法
Jul 07 Python
python模拟Django框架实例
May 17 Python
Python实现字典按照value进行排序的方法分析
Dec 23 Python
Python基于plotly模块实现的画图操作示例
Jan 23 Python
Python实现的登录验证系统完整案例【基于搭建的MVC框架】
Apr 12 Python
jupyter 中文乱码设置编码格式 避免控制台输出的解决
Apr 20 Python
解决Keras中CNN输入维度报错问题
Jun 29 Python
python 实现朴素贝叶斯算法的示例
Sep 30 Python
浅析python连接数据库的重要事项
Feb 22 Python
python实现简单的名片管理系统
Apr 26 Python
安装pytorch时报sslerror错误的解决方案
May 17 Python
python opencv旋转图片的使用方法
Jun 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 生成静态页面的办法与实现代码详细版
2010/02/15 PHP
php 多关键字 高亮显示实现代码
2012/04/23 PHP
详解Grunt插件之LiveReload实现页面自动刷新(两种方案)
2015/07/31 PHP
php实现异步数据调用的方法
2015/12/24 PHP
PHP判断是否是微信打开,浏览器打开的方法
2018/03/14 PHP
基于Jquery制作的幻灯片图集效果打包下载
2011/02/12 Javascript
JS无法捕获滚动条上的mouse up事件的原因猜想
2012/03/21 Javascript
浅谈JSON和JSONP区别及jQuery的ajax jsonp的使用
2014/11/23 Javascript
实例代码讲解jquery easyui动态tab页
2015/11/17 Javascript
javascript设计简单的秒表计时器
2020/09/05 Javascript
javascript仿京东导航左侧分类导航下拉菜单效果
2020/11/25 Javascript
使用vue.js开发时一些注意事项
2016/04/27 Javascript
jquery+ajax实现省市区三级联动效果简单示例
2017/01/04 Javascript
Angular.js初始化之ng-app的自动绑定与手动绑定详解
2017/07/31 Javascript
JS实现中英文混合文字溢出友好截取功能
2018/08/06 Javascript
javascript事件监听与事件委托实例详解
2019/08/16 Javascript
js实现弹窗效果
2020/08/09 Javascript
js实现弹幕墙效果
2020/12/10 Javascript
[48:18]DOTA2-DPC中国联赛 正赛 RNG vs Dynasty BO3 第二场 1月29日
2021/03/11 DOTA
Python实现的简单模板引擎功能示例
2017/09/02 Python
利用Python暴力破解zip文件口令的方法详解
2017/12/21 Python
python实现Decorator模式实例代码
2018/02/09 Python
python实现获取单向链表倒数第k个结点的值示例
2019/10/24 Python
win10安装tesserocr配置 Python使用tesserocr识别字母数字验证码
2020/01/16 Python
python实现图片转字符画
2021/02/19 Python
加拿大时尚少女服装品牌:Garage
2016/10/10 全球购物
美国排名第一的泳池用品直接来源:In The Swim
2019/09/23 全球购物
JAVA中运算符的分类及举例
2015/09/12 面试题
机械工程系毕业生求职信
2013/09/27 职场文书
思想汇报格式
2014/01/05 职场文书
电脑租赁公司创业计划书
2014/01/08 职场文书
写给女生的道歉信
2014/01/14 职场文书
先进事迹报告会主持词
2014/04/02 职场文书
公司口号大全
2014/06/11 职场文书
2014年安全生产目标责任书
2014/07/23 职场文书
2014年城市管理工作总结
2014/12/02 职场文书