- 顺序流程:就是代码一种自上而下的执行结构,也是python默认的流程
- 选择流程/分支流程:根据在某一步的判断,有选择的去执行相应的逻辑的一种结构
if—else语句
Python的条件语句是通过一条或者多条语句的结果进行执行**(Flash—不成立,Turn—成立)**
Python当中的if语句通常用于控制程序的一个执行过程,如下实例:
if 判断条件:
执行语句……
else:
执行语句……
**条件判断:**判断条件表达式的值是真还是假,条件判断的解释是:让计算机知道,在什么条件下,该去做什么。
number = 3
if number > 1:
print('你输入的数字大于1')
pass
注意格式:if语句后面要加个:同时执行语句要缩进四个空格(Tap),当然在这里你也可以使用input关键字进行输出。切记if表达式里面的为真可以执行print的内容,为假则不执行,也就是要满足它的判断条件!
number = 5
if number > 5:
print(number)
pass
else:
numbers = number - 5
print(numbers)
pass
输出的结果:0
原因:if表达式不成立不执行,则执行else语句。
if和else是同一层级,不需要缩进。if和else下的执行语句都需要缩进四个空格。
grade = 60
if 80 <= grade <= 100:
print('成绩优秀')
elif 60 <= grade < 80:
print('成绩中等')
else:
print('成绩差')
输出结果:成绩中等
elif:用于三个及三个条件以上的判断条件下进行使用,里面内容存放的是表达式
credit = int(input('请输入你的学分:'))
if credit > 10:
achievement = int(input('请输入你的成绩:'))
if achievement > 80:
print('你的成绩那是相当的very good boy')
pass
else:
print('你的成绩不达标')
pass
else:
print('你的学分NO')
输出结果根据你的学分来进行判定.
注意,看它的作用域,这里运用来if嵌套语句。对于嵌套其实大家知道多多熟练掌握这个不怎么难的。
- 输入学分不达标
- 输入的学分达标,但是输入的成绩不达标
- 输入的学分达标,输入的成绩达标
设置if语句格式
每个示例都展示了良好的格式设置习惯。
在条件测试的格式设置方面,PEP 8提供的唯一建议是,在诸如== 、>= 和<= 等比较运算符两边各添加一个空格,例如,if age < 4: 要比if age<4: 好。
这样的空格不会影响Python对代码的解读,而只是让代码阅读起来更容易。
while循环
while 循环不断地运行,直到指定的条件不满足为止。
用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:
while 判断表达式:
执行语句
好,那么我们现在就上一个简单的while循环的代码,让大家直观的感受到while循环的作用:
题目一:用while循环从1循环到100
number = 0
while number <= 100:
print('数字:%d'%number)
number = number + 1
pass
- 这里就是注意while语句里面的表达式的值,以及number = number + 1的使用
题目二:用while循环打印出9*9的乘法口诀表
row = 1 # 行
while row <= 9:
col = 1 # 列
while col <= row:
print("%d*%d=%d" % (row,col,row*col),end=" ") # print自身换行 end是空格
col += 1 # col = col + 1
pass
print()
row += 1
pass
- 这里主要注意一下的就是双层嵌套的使用以及表达式还有自增的一个过程
题目三:猜拳游戏用while循环循环三次再退出while循环
import random # 导入生成随机数模块
- 这个题目就留给大家来练习一下吧💕
while循环的嵌套格式:
while 条件1:
条件1成立时执行语句
条件1成立时执行语句
条件1成立时执行语句
while 条件2:
条件2成立时执行语句
条件2成立时执行语句
for循环
for跟while****循环一样也可以完成循环。
在Python中for循环可以遍历任何序列的项目,如一个列表或者一个字符串等。
循环的格式
for 临时变量 in 字符串,列表等:
执行代码块
执行代码块
- 那么在这里我就用一个很简单的for循环的代码带大家来看看for循环的作用
# for 临时变量(存放容器name) in 容器()
name = '123456'
for max in name:
print(max)
pass
- name是变量
- for的max是个临时变量可以当成是一个水杯吧
- name就是水,要把水放在max的这个水杯上
- 下面就是执行的代码块的内容
range()函数
range() 函数返回的是一个可迭代对象(类型是对象),而不是列表类型, 所以打印的时候不会打印列表。
此函数— range(起始,始终,步长) 生成一个数据集合的列表 在始终当中100输出99,步长就相当于间隔。
函数语法
- range(start,stop,step)
参数说明:
- start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5)
- stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4] 没有5
- **step:**步长,默认为1。例如:range(0, 5) 等价于 range(0,5,1)
题目一:求输出1~100之和和的数(用for循环进行使用)
sum = 0
for max in range(1,101):
sum += max # sum = sum + max
pass
print() # 换行
print("sum = %d"%sum)
- 这里主要就是对for循环的一个使用或者是理解,当然在for循环里面每次还需要递增+1
题目二:求出50~200的倍数分别求出奇数以及偶数以及总和(for循环)
odd = 0 # 奇数
even = 0 # 偶数
for date in range(50,201):
if date % 2 == 0:
print("偶数:date = %d"%date,end=' ')
odd += 1
做了那么多年开发,自学了很多门编程语言,我很明白学习资源对于学一门新语言的重要性,这些年也收藏了不少的Python干货,对我来说这些东西确实已经用不到了,但对于准备自学Python的人来说,或许它就是一个宝藏,可以给你省去很多的时间和精力。
别在网上瞎学了,我最近也做了一些资源的更新,只要你是我的粉丝,这期福利你都可拿走。
我先来介绍一下这些东西怎么用,文末抱走。
* * *
**(1)Python所有方向的学习路线(新版)**
这是我花了几天的时间去把Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
最近我才对这些路线做了一下新的更新,知识体系更全面了。
![在这里插入图片描述](https://img-blog.csdnimg.cn/8fc093dcfa1f476694c574db1242c05b.png)
**(2)Python学习视频**
包含了Python入门、爬虫、数据分析和web开发的学习视频,总共100多个,虽然没有那么全面,但是对于入门来说是没问题的,学完这些之后,你可以按照我上面的学习路线去网上找其他的知识资源进行进阶。
![在这里插入图片描述](https://img-blog.csdnimg.cn/d66e3ad5592f4cdcb197de0dc0438ec5.png#pic_center)
**(3)100多个练手项目**
我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。
![在这里插入图片描述](https://img-blog.csdnimg.cn/f5aeb4050ab547cf90b1a028d1aacb1d.png#pic_center)
**(4)200多本电子书**
这些年我也收藏了很多电子书,大概200多本,有时候带实体书不方便的话,我就会去打开电子书看看,书籍可不一定比视频教程差,尤其是权威的技术书籍。
基本上主流的和经典的都有,这里我就不放图了,版权问题,个人看看是没有问题的。
**(5)Python知识点汇总**
知识点汇总有点像学习路线,但与学习路线不同的点就在于,知识点汇总更为细致,里面包含了对具体知识点的简单说明,而我们的学习路线则更为抽象和简单,只是为了方便大家只是某个领域你应该学习哪些技术栈。
![在这里插入图片描述](https://img-blog.csdnimg.cn/c741a91b05a542ba9dc8abf2f2f4b1af.png)
**(6)其他资料**
还有其他的一些东西,比如说我自己出的Python入门图文类教程,没有电脑的时候用手机也可以学习知识,学会了理论之后再去敲代码实践验证,还有Python中文版的库资料、MySQL和HTML标签大全等等,这些都是可以送给粉丝们的东西。
![在这里插入图片描述](https://img-blog.csdnimg.cn/9fa77af248b84885a6ec779b2ead064d.png)
**这些都不是什么非常值钱的东西,但对于没有资源或者资源不是很好的学习者来说确实很不错,你要是用得到的话都可以直接抱走,关注过我的人都知道,这些都是可以拿到的。**
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化学习资料的朋友,可以戳这里无偿获取](https://bbs.csdn.net/topics/618317507)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**