#1 打印实心等边三角形
n = 5
for i in range(1, n+1): # 控制三角形的高,也就是层数
for k in range(2*(n-i)): # 控制每层第一个*的空格,从最后一层往上数分别是0, 2, 4, 6....,因为三角形越大,第一层空格反而越多,想起这个应该跟i有关,而且肯定是被减的那个数,发现刚好是2n-2i
print("",end=" ")
for j in range(1, 2*i): # 控制每层*的个数,由于是1,3,5,7,9...所以很快知道是2i-1
print("*",end=' ')
print() #2 打印空心等边三角形(先出来了实心再考虑空心)
'''
思考:空心和实心的区别,空心的除了第一行和最后一行,其余行都是只有两个*,其它都是空格,因此最主要是找到空格个数
空格个数你会发现和消失的*有关(跟实心相比),第二行消失1个,第三行消失3个,依次类推,是不是1,3,5,7,9,那么是不是就是2((i-1)-1)
因为从第一行开始如果是1,3,5,7,9的话就是2i-1,那么从第二行开始肯定就是2((i-1)-1),那么消失的*个数知道了,那么空格和*是什么关系呢?
可以发现是空格2倍的*+1,所以每行空格数就是2*(i-1)-1)*2 + 1
'''
n = 5
for i in range(1, n+1): # 控制三角形的高,也就是层数
for k in range(2*(n-i)): # 控制空格
print("",end=" ")
if 1 < i < n:
print("*",end="")
for j in range(1, (2*(i-1)-1)*2 + 1 +1):
print(" ",end='')
print("*", end="")
else:
for j in range(1, 2*i): # 控制每层*的个数,由于是1,3,5,7,9...所以很快知道是2i-1
print("*",end=' ')
print()

python打印实心等边三角形和空心等边三角形的更多相关文章

  1. c++打印实心菱形,空心三角形,十字星,空心正方形,实心平行四边形

    今天翻资料的时候,无意间发现了一个文件,是刚接触编程的时候用c++写的一段程序,我称之为"图形打印机",想着把所有图形都打印出来,后来发现其实每种图形的代码都是一个思路,就不想做重 ...

  2. java中打印实心菱形以及空心菱形的方法

    一.打印效果 二.实现代码汇总 为了方便初学者对代码的理解,建议熟练t1到t5为各种三角的打印,然后再进行菱形的打印实现. package circulationDemo; import java.u ...

  3. java打印实心10*10正方形, 空心10*10正方形

    public class PrintSquare { public static void main(String[] args) { printSolidSquare(10); System.out ...

  4. Python打印格式化与字符串

    关于Python打印格式化与字符串,比较全面的总结,希望对大家有帮助~ # -*- coding: cp936 -*- ''' 打印格式 ''' print "a" print & ...

  5. python打印表格式数据,留出正确的空格和段落星号或注释

    python打印表格式数据,留出正确的空格,格式化打出 代码如下: def printPicnic(itemsDict,leftWidth,rightWidth): print('PICNIC ITE ...

  6. python 打印 emoji

    python 打印 emoji 如需转发,请注明出处:小婷儿的python  https://www.cnblogs.com/xxtalhr/p/10486506.html 一.Unicode字符集: ...

  7. python打印列表的下标和值的例子:

    python打印列表的下标和值的例子: In [1]: list01=[1,4,5] In [10]: def funct01(ll):   ....:     for index,value in ...

  8. 【Python】Python 打印和输出更多用法。

    Python 打印和输出 简述 在编程实践中,print 的使用频率非常高,特别是程序运行到某个时刻,要检测产生的结果时,必须用 print 来打印输出. 关于 print 函数,前面很多地方已经提及 ...

  9. python 打印 九九表

    用Python 打印九九表. print 每打印一行默认会带有换行, 在print语句后加上,end = 't' 会变成tab. 排版会好点. def main(): for i in range(1 ...

随机推荐

  1. 【3】火狐中: radio被点击以后,重刷页面,不会选择默认的radio

    1.问题:火狐中radio (单选框)点击以后,重新刷新页面,不会选择默认的radio 解决:form表单中添加:autocomplete="off" autocomplete 属 ...

  2. PyQt4 Python GUI窗体应用程序

    目录 目录 前言 软件环境 PyQT简介 Setup PyCharm Setup SIP Setup PyQt4 测试PyQt是否安装成功 常见错误 最后 前言 还是一句老话,公司要什么我就做什么.这 ...

  3. docker下载镜像加速

    1.如何获取阿里云加速地址 参考文档 https://yq.aliyun.com/articles/29941 关于加速器的地址,你只需要登录容器Hub服务的控制台,左侧的加速器帮助页面就会显示为你独 ...

  4. Sublime Text 3 相关

    Sublime Text 3 相关 Sublime Text 3是款非常实用代码编辑神器,但是想要用任何一款软件,掌握一些快捷键还是很有必要的.. 将Sublime Text 3 添加到右键选项中 打 ...

  5. LeetCode.1029-两城调度(Two City Scheduling)

    这是小川的第383次更新,第412篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第245题(顺位题号是1029).公司计划采访的人数为2N.将第i个人飞往城市A的费用是[ ...

  6. firewalld防火墙简介

    1.防火墙 防火墙,其实就是一个隔离工具:工作于主机或者网络的边缘 对于进出本主机或者网络的报文根据事先定义好的网络规则做匹配检测, 对于能够被规则所匹配的报文做出相应处理的组件(这个组件可以是硬件, ...

  7. 执行python程序 出现三部曲

    1.执行一个python程序 ,会产生一个进程 ,然后会在内存生成一份内存空间 先把python解释器代码加载到内存里, python解释器代码就是C语言代码 2. 然后再把 自己写的python文件 ...

  8. 交换机安全学习笔记 第九~十章 HSRP VRRP

    HSRP  (Hot Standby Router Protocol) 热备份路由器协议 思科私有 HSRP消息使用UDP 端口号 1985(IPv6时为2029) 使用多播地址 224.0.0.2( ...

  9. mysql 导出 导入sql 文件

    C:\Users\Eric>mysqldump -uroot -p      demo->数据库名 >  C:\Users\Eric\demo.sql    导出目录地址 导入 sq ...

  10. Python 入门之 内置模块 -- datetime模块

    Python 入门之 内置模块 -- datetime模块 1.datetime模块 from datetime import datetime (1)datetime.now() 获取当前时间和日期 ...