如何使用python打印直角三角形,等边三角形,菱形,正方形

  • 更新时间:2020-03-12 16:39:49
  • 编辑:扈修雅

三角形

等腰直角三角形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实现方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

    发布时间:2019-07-25

  • Apache怎么支持Python

    Apache支持Python的基本流程:第一步,安装apache。||第二步,安装mod_python模块,查看模块是否被加载进来。||第三步,告诉apache在碰到py后缀的文件时用python执行。

    发布时间:2019-06-27

  • Python机器学习基础教程

    Python机器学习基础教程

    这是一本机器学习入门书,以Python语言介绍,包含机器学习的基本概念及其应用;实践中最常用的机器学习算法以及这些算法的优缺点;待处理数据的呈现方式的重要性等内容

    大小:28.3 MBPython电子书

  • 利用Python进行数据分析(第2版)

    利用Python进行数据分析(第2版)

    本书涵盖大量具体的实践建议,以及大量综合应用方法,教大家如何利用各种Python库高效地解决各式各样的数据分析问题,这里提供利用Python进行数据分析英文原版下载,附件集合了第二版英文原文、第二版的笔记精要、以及第二版原书的代码

    大小:91.7 MBPython电子书

  • 小白入门宝典:Python快速入门魔力手册

    小白入门宝典:Python快速入门魔力手册

    本教程全新的介绍了Python入门基础,以及各种各样的错误避免,以通俗易懂的语言,讲述Python开发,欢迎下载

    大小:11.8 MBpython入门电子书

  • 毫无障碍学Python

    毫无障碍学Python

    本书从第-行Python代码开始,就让您轻松感受到学习Python的乐趣,包含基础到爬虫、人脸识别、验证码破解、数据抓取与分析等,特别适合于Python学习者自学

    大小:640.6 MBPython电子书

  • Python学习手册

    Python学习手册

    Python新手入门必看之作,位居美亚电脑编程热销第一,《Python编程》姊妹篇遮盖Python3.3和Python2.72个版本号,详尽解读各种各样語言特点,并增加很多实例 这书依据Python权威专家MarkLutz的知名课

    大小:123 MBPython手册电子书

  • Python3智能数据分析快速入门

    Python3智能数据分析快速入门

    Python3智能数据分析快速入门 (1)深度学习等AI技术性驱动器的智能化数据统计分析是数据统计分析制造行业的将来发展前景,全部数据分析师都应当关心。 (2)创作者从业数据统计分析与发

    大小:3.1 MBPython3电子书

  • Python极客项目编程

    Python极客项目编程

    Python极客项目编程通过14个有趣的项目,帮助和鼓励读者探索Python编程的世界,展示如何用Python来解决各种实际问题,以及如何使用一些流行的Python库,帮助读者掌握实用的Python编程技能。

    大小:6.5 MBPython编程电子书

  • Python网络爬虫实战

    Python网络爬虫实战

    本书从Python的安装开始,详细讲解了Python从简单程序延伸到Python网络爬虫的全过程。本书从实战出发,根据不同的需求选取不同的爬虫,有针对性地讲解了几种Python网络爬虫。本书共8章,涵盖

    大小:47.4 MBPython爬虫电子书

  • Python编程从零基础到项目实战:微课视频

    Python编程从零基础到项目实战:微课视频

    1.配套设施视頻解读,扫二维码播放视频,傻瓜式教您学习培训 为便捷用户学习培训,这书视频录制了150集视頻解读(在其中23集为赠予视頻),并在视頻部位设定了二维码图片,根据手机上二

    大小:37.7 MBPython编程电子书

用户留言