作为刚开始学习Python,很多小知识点都能看懂,但是一动代码就无语,所以遇到for循环的星星金字塔又卡住了,经过3个小时终于搞明白for嵌套for和一些算法的问题特次做一下笔记

第一种实现方式

n = int(input('请输入你需要打印星星的层数:'))

for i in range(1,n+1):

print(' '*(n-(i-1))+'*'*(2*i-1))

分析:  每行有空格和星星组成,也就是逐行打印星星和空格即可

发现星星的每层的个数是第一个是1,3,5,7。

每层空格是总层数减相应的层数()

先研究算法

这也是为什么很多代码看得懂,拿上手也不知道怎么写,

所以每一个要解决的问题,首先先画图看算法,研究出来以后再去实现代码就ok

假设需要打印4层星星(金字塔形式)

1.从纵向来看每一层的星星是1,3,5,7

2.从横向来看每一层的空格是3,2,1,0

(星星后面的空格不用管,因为空格后面打印星星后自然不

会现实任何字符,也就是相当于是空格,所以只要保证前面

的空格数是正确就可以保证后面的正确数

l = int(input("请输入你需要的层数:"))

for i in range(1,l+1):

print((l-i)*" ",end="")#打印空格

print((2*i-1)*"*")#打印星号

输出结果:

*

***

*****

*******

如果看不懂空格是如何实现的可以改变代码为如下:

l = int(input("请输入你需要的层数:"))

for i in range(1,l+1):

print((l-i)*"k",end="")#打印空格

print((2*i-1)*"*")#打印星号

输出结果:

kkk*

kk***

k*****

*******

总结:

不管是for嵌套for循环还是直接print输出,都逃不过对空格和星号的操作,原理都一样。

因为需要遍历,所以每一次 i 都会+1

每一层的空格是3,2,1,0 也就是“层数”-每一次遍历的值

每一层的星星是1,3,5,7 也就是 最后需要用一个公式得到这几个数,所以采用2*i-1就可以得到1,3,5,7

思考 思考 思考 真的很重要

python画图代码星星-Python 星星 金字塔 学习笔记相关推荐

  1. python画图代码彩虹-Python利用turtle库绘制彩虹代码示例

    语言:Python IDE:Python.IDE 需求 做出彩虹效果 颜色空间 RGB模型:光的三原色,共同决定色相 HSB/HSV模型:H色彩,S深浅,B饱和度,H决定色相 需要将HSB模型转换为R ...

  2. python画图代码大全-Python科学画图代码分享

    Python画图主要用到matplotlib这个库.Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形. 这里有一本电子书供大家参 ...

  3. python画图代码大全-Python实现画图软件功能方法详解

    概述 虽然Python的强项在人工智能,数据处理方面,但是对于日常简单的应用,Python也提供了非常友好的支持(如:Tkinter),本文主要一个简单的画图小软件,简述Python在GUI(图形用户 ...

  4. python画图代码彩虹-python绘制彩虹图

    本文实例为大家分享了python绘制彩虹图的具体代码,供大家参考,具体内容如下 from turtle import * #控制彩虹路径 def path(pen, r, g, b): pen.pen ...

  5. python画图代码彩虹-python绘制简单彩虹图

    本文实例为大家分享了python绘制彩虹图的具体代码,供大家参考,具体内容如下 代码: from turtle import * #控制彩虹路径 def path(pen, r, g, b): pen ...

  6. python画图代码大全-Python Matplotlib 绘图使用指南 (附代码)

    雷锋网(公众号:雷锋网)按:本文为雷锋字幕组编译的技术博客,原标题 Matplotlib Plotting Guide, 作者为 Prince Grover. 翻译 | 李振 于志鹏 整理 | 凡江 ...

  7. 《python(廖雪峰课程)》学习笔记

    <python(廖雪峰课程)>学习笔记(个人检索) 1. 第一个python程序 input & output print输出字符串可以用""or'' prin ...

  8. python web开发入门_python大佬整理的python web开发从入门到精通学习笔记

    原标题:python大佬整理的python web开发从入门到精通学习笔记 Python(发音:英[?pa?θ?n],美[?pa?θɑ:n]),是一种面向对象.直译式电脑编程语言,也是一种功能强大的通 ...

  9. python画图代码星星-Python打印“菱形”星号代码方法

    本人是一名python初学者,刚刚看到一道有趣的python问题,"用python如何在编译器中打印出菱形图案?" 因此决定尝试一下,代码不多,仅供参考. 代码 def print ...

  10. python 画图代码及解释_python画图(图例、网格、注释) - v2

    每件事情总有两面性,当我们看到不太好的一面时,一定要想着去寻找一下好的一面.就比如,原本计划好的五一行程被打乱之后,我脑子里便诞生了一个"伟大"的想法,立马买好了乳胶漆打算利用闲暇 ...

最新文章

  1. Sqlserver的触发器的简单使用
  2. 从流感预测到智能决策,深度学习能帮企业做哪些事?
  3. Redis Primer(1)基于JedisPool的Redis hset并发性能测试 - @钟超 · 技术博客专栏 - 博客频道 - CSDN.NET...
  4. IE6 / IE7 / Firefox 的margin问题解决办法
  5. 第一行代码学习笔记第十章——探究服务
  6. 鸡啄米vc++2010系列35(工具栏资源及CToolBar类)
  7. 使用POI生成Excel文件,可以自动调整excel列宽 .
  8. php框架中什么是渲染,thinkPHP5框架渲染模板的3种方式简述
  9. 同步代码时忽略maven项目 target目录
  10. Hadoop:Hadoop单机伪分布式的安装和配置
  11. 在MyEclipse Tomcat可以运行但是在Tomcat 6.x上却不可以运行
  12. 光环PMP 串讲冲刺 敏捷
  13. allegro174的brd转alg文件导入AD异常
  14. RCLAMP0524P超低电容TVS二极管阵列,DFN-10L封装
  15. 【Android studio】使用雷电模拟器详细过程(或其他)(转)
  16. 国产处理器瑞芯微RK3568对比RK3399性能解析-迅为开发板
  17. 软电话 开源的和免费的大全
  18. R语言中的广义线性模型(GLM)和广义相加模型(GAM):多元(平滑)回归分析保险资金投资组合信用风险敞口
  19. 检查mysql敏感词_拼多多违禁词怎么查 拼多多敏感词违规词检测
  20. ap计算机sql,如何用sql实现AP

热门文章

  1. centos安装时各个版本的含义
  2. win8 explorer 进程频繁奔溃的原因及处理
  3. arm920T与arm926的区别[转载]
  4. .NET 数据访问架构指南(转)
  5. 发布订阅--SQLServer复制需要有实际的服务器名称才能连接到服务器,请指定实际的服务器名...
  6. Java 基础 - 如何重写equals()
  7. [BZOJ 2427] 软件安装
  8. 了解大数据在人力资源和薪资中的作用
  9. 全面学习ORACLE Scheduler特性(5)Schedules调度Programs执行的Jobs
  10. Linux TCP拥塞控制算法原理解析