Python入门系列13 - 流程控制语法篇

共 2242字,需浏览 5分钟

 ·

2019-08-24 10:41

Python入门系列13

5064b6d695e7ddb655d018378415b2c3.webp

流程控制语法篇


本篇文字为1745字,阅读时间约为7分钟。


1

前言


今天要介绍的是python中的程序控制关键词,也就是条件,以及python的包、模块的概念。


2

条件控制、循环控制


在步入正题之前,先来阐述一个概念 --- 表达式(运算符 和 操作数所构成的)。

它长什么样子呢?如下:

a = 1 + 2 + 3
a = [1,2,3,4]
a > b

而现在写的代码,就是用类似上面的表达式所构成的,我们可以通过条件控制,循环控制来使代码形成具有逻辑的体系。

打开IDEL,按下Ctrl + n打开文本编辑器,后续设计到代码块的格局。或者点击idle的File --- > New File 也是一样的。


1.条件控制  (if ,if  else, if elif)

之前一直说过的,计算机世界中实际上映射了现实生活中的例子!在现实生活中,举个例子:如果我当年好好学习,那么我现在早就是大神了!这样的话语就是条件控制,当然现实世界并不存在如果,说多了如果都是侥幸心理罢了。


if代表的就是如果。

if : 

c8623f0b82cb83a332df9b091db68788.webp

需要注意的是:Python 不想其他语言通过{}来控制代码的作用域,在之前的小课堂就说过,写代码时通过4空格来控制!


如果条件为真,就走条件里的内容,否则就走其它的条件里的内容,else就是其它的意思。

if - else:

f8b066447a3cd190a7600b81fa3648e4.webp


if - elif:

812cbaf11a0076e1a84d3d645e721114.webp


给个经常用到的小例子吧,不要小瞧if - else!我们生活中的各种账号登录,可以来写一个小程序看看:

b18bf825433ad886402d61341cb8dc98.webp

要说明的是,我上面的截图中,有一点是不符合python官方规范的!赋值的前两步骤,是两个恒定不变的字符串,这样的东西在编程中称之为常量!常量正规写法应该大写!所以下面我修改了....


代码本文版:

CORRECT_USER = 'sssyyy'
CORRECT_PASSWORD = '123456'

username = input('请输入登录的用户名:\n')
password = input('请输入登录的密码:\n')

if CORRECT_USER == username and CORRECT_PASSWORD == password :
    print('登陆成功了!')
else :
    print('用户名或者密码错误!')


通过上面的小程序,将前几章的小知识串联起来了一部分。通过if来判断是否登录成功,有变量的赋值操作,还有 and 、== 操作符,以及input()这样的python自带方法。


注意input():

9f4d4251a08fd88208c8ff15cd68e925.webp

所以当我们输入1的时候,实际上进去的是字符串类型,这也是为什么我小程序中是将字符串赋值给了变量。


2. 循环控制   (while  ,for ...  in ,continue,break)

循环控制:依然是以现实生活中举例子吧,有些朋友们一定听说过暴力破解,在登录某些网站时,通过不断对其密码的排列组合进行登录,也就是所谓的穷举。每登录一次,换一次密码组合尝试,最终达到对比出正确的密码进行登录。而这种思想,就是在循环控制下实现的。


while中文含义是在…期间。

while:

05c5f16cd66e307739d6b4bcd0bef78b.webp


如何跳出呢?继续写个小例子来演示,现在有个场景,每次将变量a加2,如果当a大于10,则结束while循环。

40bc0a06d2e0eeeaca359509b54ab0e5.webp


Tips:

a = 1
print(f'当前的值为 {a}')

f'{变量名字}'  ----->  这样的语法是python3.6 以上的新特性,支持直接将字符串进行格式化。而不需要自己手动在后面累加。


while - else:

d24e6bcc7e86928b7a0b73a0eabf90e7.webp


for ,为了的意思,for关键词在之前有介绍过,我们可以通过for来遍历序列(str、list、tuple)、字典(dict)、集合(set)这样的类型。。

for:

7363dc062bc9d2c934a82f4f9cefbc12.webp

Tips:

print()第二个参数添加end,就是每次追加'',而print默认追加\n换行符

print('',end = '')


来介绍一个python中比较屌的内置方法 --- > range()。

range()经常与for套用在一起使用,比如现在需要循环10次,每次循环打印出数字!如何去写:

90fcbc254518be5b34f7332a598b23df.webp


如果每次递增2个数字,再去打印呢?

e7cac00addc9ac508e661bdca7000649.webp


如果我想倒过来打印呢?

6941d957814ed2bf4cac89f621bd8b89.webp

Tips:

range(a,b,c)  --->  a,起始的数值 ;b,结束的数值;c,步长,类似之前介绍的切片特性的步长机制!


3

循环控制的跳出


在上面的while中,我介绍了通过一种“活”条件来实现跳出,那么有没有方法直接可以跳出循环控制呢!一定是有的,就是python中的关键词:break,continue


break:中文意思打破,中断!是不是很通俗易懂,再循环中加上break字眼,即可中断程序。

场景:数字a初始值为1,在while循环中,每次循环加1,当a = 10时,中断程序,并且输出中断程序。(初学者可以自己去idle中尝试动手!)

0add0976f8f5aed597dab6d39641cb4d.webp


continue:中文有继续的意思,所以在使用循环时符合当前条件,continue后面的代码都不执行,跳过后进行继续下一次循环。

场景:数字a初始值为1,在for循环中,每次将a累加1,一共循环20次并打印输出结果,在循环第10次的时候,跳过累加,打印出当前a的值。

e9c85e9d95c7dd5a04e7be5cfa669aee.webp


4

总结


到现在python的流程控制也讲完了。基本上到这里如果有思路,爱动手的同学,已经可以自己开始编程了。无论学习哪种语言,重要的还是编程的思想!有了思想,无非就是需要熟悉熟悉语法罢了。来看看到现在为止,点亮了多少小图标了!

7353b70a52704e23ac754a3313fdf689.webp

浏览 42
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报