Python学习杂记_4_分支和循环
分支 和 循环
分支和循环这俩结构在各语言中都有着很重要的地位,当然我之前都没有学好,这里总结一下在Python学习中对这俩结构的认识。
- 分支结构
# 单分支
if 条件判断:
执行语句…
# 双分支
if 条件判断:
执行语句…
else:
执行语句…
#多分支
if 条件判断:
执行语句…
elif:
执行语句…
else:
执行语句…
- 循环结构
1. while循环 ,需要定义循环变量来控制循环。
i = 0初始化一个控制循环的变量
while 有关循环变量的条件判断:
执行循环语句
…
while有关循环变量的条件判断:
执行循环语句
…
break # 跳出当前循环节,也跳出了当前循环体接着将执行循环之后的语句。
while有关循环变量的条件判断:
执行循环语句
…
continue # 跳出当前循环节,继续执行本循环体的下一次循环。
2. for循环
对循环的控制上,它和while循环很不同,for不需要特意定义和操作一个变量来控制循环,对循环的执行是自控的,如下俩例子:
for i in range(3): # range(3)是个可迭代对象,这里 i 并没有事先定义,i 从0开始作为0,1,2 控制执行3次循环,这里 i 无需定义并在可迭代对象范围内无条件自增。
print(i)
fr=open("file.txt"):
for line in fr: # 文件是个可迭代对象,line也不用事先定义,自觉遍历文件的每一个行,也许用词不太恰当,你懂就好。
print(line)
以上的各中介结构中都有“条件判断”部分,条件判断是不局限于具体的表达式,它可以是任何表达式,看我们只看条件判断的结果是“真”还是“假”,真则执行,假则不执行,另外在看表达式结果的时候记住一句话“非零即真,非空即真”。
条件表达式中常常结合以下运算:
or # 或者
and # 并且
in # 在不在…里面
is # 判断内存地址是不是一样
not # 取反
上面只是最基本的结构,通常在程序中这些结构都不是单一存在的,而是相互嵌套共同作用。分支结构可以再嵌套分支结构,循环结构可以再嵌套循环结构,分支和循环也可以相互嵌套。
格外注意一点:在Python中,else是可以和循环组成分支结构的,这在其它语言中是没有的,见以下例子:

Python学习杂记_4_分支和循环的更多相关文章
- python学习笔记:分支 与 循环
if 语句 if 条件: ...... # 条件为真的时候,执行缩进的代码 if 条件: ...... # 条件为真的时候执行 else: ...... # 条件为假的时候执行 if 条件1: ... ...
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
- Python学习杂记_10_三元运算符
常用三元运算符来简化分支和循环的代码: 分支简化: a = 1b = 2c = a if a > 1 else bprint(c) # 以上几行等同于 a = 1b = 2if a >1: ...
- python学习小结1:for循环控制语句
用一个列表来确定for循环的范围 >>> x = [0,1,2,3,4] >>> for i in x: print i, 0 1 2 3 4 循环一个字符串 & ...
- Python学习笔记五--条件和循环
5.1 if语句 没什么好说,if语句语法如下: if expression: expr_true_suit 5.1.1多重条件表达式 单个if语句可以通过布尔操作符and,or,not实现多重条件判 ...
- python学习第六天 条件判断和循环
总归来讲,学过C语言的同学,对条件判断和循环并不陌生.这次随笔只是普及一下python的条件判断和循环对应的语法而已. 条件判断: 不多说,直接贴代码: age = 23 if age >= 6 ...
- Python 学习入门(20)—— 循环
1. for 循环 for循环需要预先设定好循环的次数(n),然后执行隶属于for的语句n次. 基本构造是 for 元素 in 序列: statement 举例来说,我们编辑一个叫forDemo.py ...
- python学习笔记——(二)循环
·密文输入引入getpass库使用getpass.getpass("password:")tips:该功能在PyCharm中不好使,只能在命令行用 ·python强制缩进,省略了大 ...
- Python学习杂记_3_字符串操作的常用方法
字符串操作 字符串是可以通过下标来进行取值的,但是由于字符串是不可变变量,不能通过下标来修改它的值(形式如 字符串[下标]),下标从0开始,最大下标值是字符串长度减1,即len(string)-1 P ...
随机推荐
- 设置虚拟机里的Centos7的IP
输入ip查询命名 ip addr 也可以输入 ifconfig查看ip,但此命令会出现3个条目,centos的ip地址是ens33条目中的inet值. 发现 ens33 没有 inet 这个属性,那 ...
- Ubuntu强制卸载VMware-player
有时候安装了vmwar-player,想再安装vmware-workstation,却提示一些古怪的消息(现在忘记具体是什么了).只能先卸载再安装 首先你可以尝试常规卸载: sudo vmware-i ...
- DOS中断及程序调用
http://www.cnblogs.com/ynwlgh/archive/2011/12/12/2285017.html
- 洛谷 P2205 [USACO13JAN]画栅栏
这题其实没什么,但用到的算法都十分有用.做一个不恰当的比喻,这是一只必须用牛刀杀的鸡,但因为我这个蒟蒻杀不死牛,所以只能找只鸡来练练手. 题目描述 Farmer John 想出了一个给牛棚旁的长围墙涂 ...
- layer父页面调用子页面的方法
由于不知道如何在子页面获取到layer定义的确定按钮,于是就在子页面上定义了一个方法,然后在由父页面在点确定按钮时调用子页面所定义的这个方法,从而执行子页面方法里面的内容: 子页面代码: functi ...
- 11,scrapy框架持久化存储
今日总结 基于终端指令的持久化存储 基于管道的持久化存储 今日详情 1.基于终端指令的持久化存储 保证爬虫文件的parse方法中有可迭代类型对象(通常为列表or字典)的返回,该返回值可以通过终端指令的 ...
- java多线程安全的问题
多线程中一定会遇到线程安全的问题,也就是在同一时间N条线程操作了同一变量,这个变量也叫做共享变量. 举例:(错误的示范) 设计一个投票系统,多个人可以对同一个的票数进行投票,下面看具体代码: 代码: ...
- MOTCF 没时间解释了 条件竞争漏洞
moctf 没时间解释了 条件竞争漏洞 题目链接 条件竞争: 在本题目中,上传文件的时候服务器无条件的接收任何类型的文件,但是你上传之后服务器会给你的文件内容修改为too slow. 比如你上传了一句 ...
- js获取触发事件的元素
//获取事件 var e = window.event; //获取元素 obj = e.target || e.srcElement; console.log(e); checkRepeat(e.ta ...
- POJ 1990:MooFest(树状数组)
题目大意:有n头牛,第i头牛声调为v[i],坐标为x[i],任意两值牛i,j沟通所需的花费为abs(x[i]-x[j])*max(v[i],v[j]),求所有牛两两沟通的花费. 分析: 我们将奶牛按声 ...