2、Python程序控制结构(0530)
条件测试:
1、if 条件测试表达式
python的比较操作
1、所有的python对象都支持比较操作
- 可用于测试相等性、相对大小等;
- 如果是符合对象,python会检查其所有部分,包括自动遍历各级嵌套对象,直到可以得出最终结果
2、测试操作符
- “==”操作符测试值的相等性
- “is”表达式测试对象的一致性
3、python的比较操作
- 数字:通过相对大小进行比较
- 字符串:按照字典次序逐字符进行比较
- 列表和元组:自左至右比较各部分内容
- 字典:对排序之后的(键、值)列表进行比较
4、python中真和假的含义
- 非零数字为真,否则为假
- 非空对象为真,否则为假
- none则始终为假
字符串:按照字典次序逐字符进行比较(按照字母表或ASCII码)
2、python中的真假:
- 任何非0数字和非空对象都为真
- 数字0、空对象和特殊对象None都为假
- 比较和相等测试会递归地应用于数据结构中
- 返回值为True或False
3、组合条件测试:
- X and Y:与运算
- X or Y :或运算
- not x:非运算
if测试的语法结构
if boolean_expression1:
suite1
elif boolean_expression2:
suite2
...
else:
esle_suite
elif语句是可选的
仅用于占位,而后再填充相关语句时,可以使用pass




A = X if Y else Z //如果Y条件满足,A=X,否则A=Z,三元表达式
if Y:
A=X
else:
A=Z

while和for循环
循环机制及应用场景
1、while循环
- 用于编写通用迭代结构
- 顶端测试为真即会执行循环体,并会重复多次测试直到为假后执行循环后的其他语句
2、for循环
- 一个通用的序列迭代器,用于遍历任何有序的序列对象内的元素
- 可用于字符串、元组、列表和其它的内置可迭代对象,以及通过类所创建的新对象
3、python也提供了一些能够进行隐形迭代的工具
- in成员关系测试
- 列表解析
- map、reduce和filter函数
while循环
1、语法格式

else分支为可选部分
只要boolean_expression的结果为true,循环就会执行;
boolean_expression的结果为false时终止循环,此时如果有else分支,则会执行
2、语法格式



while语法格式:
while bool_expression:
while_suite
else:
else_suite
while循环语法格式扩展

break:跳出最内层的循环
continue:跳到所处的最近层循环的开始处
pass:点位语句
else代码库:循环正常终止才会执行,如果循环终止是由break跳出导致的,则else不会执行

练习题1:逐一显示指定列表中的所有元素;


简化:
练习4:创建一个包含了100以内所有奇数的列表; 练习5:逆序显示列表中的所有元素;

练习6:列表l1 = [0,1,2,3,4,5,6],列表l2 = ['sun','mon','tue','wed','thu','fri','sat'],以第一个列表中的元素为键,以第二个列表中的元素为值生成字典d1;

while true:死循环
for循环
1、语法格式

通常,expression或是一个单独的变量,或是一个变量序列,一般以元组的形式给出
如果以元组或列表用于expression,则其中的每个数据项都会拆分到表达式的项,例如
T=[(1,2),(3,4),(5,6),(7,8)]
for (a,b) in T:
print a,b
for循环形式扩展

编写循环的技巧
1、for循环比while循环执行的速度快
2、python提供了两个内置函数,用于在for循环中定制特殊的循环
range或xrange
range:一次性的返回连续的整数列表
xrange:一次产生一个数据元素,相较于range更节约空间
zip
返回并行的元素元组的列表,常用于在for循环中变量数个序列
range函数
1、非完备遍历
用于每隔一定的个数元挑出一个元素

2、修改列表

并行遍历
1、zip
- 取得一个或多个序列为参数,将给定序列中的并排的元素配成元组,返回这些元组的列表
- 当参数长度不同时,zip会以最短序列的长度为准
- 可在for循环中用于实现并行迭代

- zip也用于动态构造字典


产生偏移和元素
enumerate
- range可在非完备遍历中用于生成索引偏移,而非偏移处的元素
- 如果同时需要偏移索引和偏移元素,则可以使用enumerate()函数
- 此内置函数返回一个生成器对象

练习题1:逐一显示指定列表中的所有元素;


2、Python程序控制结构(0530)的更多相关文章
- python程序控制结构
一:顺序结构 顺序结构的程序是指程序中的所有语句都是按照书写顺序逐一执行的,但是顺序结构的程序功能有限. 二:选择结构 选择结构也称为分支结构,用于处理在程序中出现两条或更多执行路径可供选择的情况.选 ...
- Python学习笔记(四)Python程序的控制结构
在学习了 Python 的基本数据类型后,我们就要开始接触Python程序的控制结构,了解 Python 是如何使用控制结构来更改程序的执行顺序以满足多样的功能需求.如果有的小伙伴在之前学过C语言,j ...
- 运行python程序
1 在windows下运行python程序 1)从DOS命令行运行python脚本 用python解释器来执行python脚本,在windows下面python解释器是python.exe,我的pyt ...
- 【python之路2】CMD中执行python程序中文显示乱码
在IDLE中执行下面代码,中文显示正常: # -*- coding:utf-8 -*- st=raw_input("请输入内容")print st 但在CMD中执行e:\hello ...
- Python程序高效地调试
现在我在debug python程序就只是简单在有可能错误的地方print出来看一下,不知道python有没像c++的一些IDE一样有单步调试这类的工具?或者说各位python大神一般是怎么debug ...
- python学习笔记-python程序运行
小白初学python,写下自己的一些想法.大神请忽略. 安装python编辑器,并配置环境(见http://www.cnblogs.com/lynn-li/p/5885001.html中 python ...
- python程序一直在后台运行的解决办法
刚写了个python程序,要一直在后台运行,即使断开ssh进程也在,下面是解决办法: 假如Python程序为test.py 编写shell脚本start.sh #!/bin/bash python t ...
- 第一个python程序
一个python程序的两种执行方式: 1.第一种方式是通过python解释器: cmd->python->进入python解释器->编写python代码->回车. 2.第二种方 ...
- Python程序的首行
>问题 >>在一些python程序中的首行往往能够看见下面这两行语句中的一句 >>>#!/usr/bin/Python >>>#!/usr/bin ...
随机推荐
- python windows安装 SQLServer pymssql,
1.到正儿八经的网站下载文件,找到适合自己的版本 2.把文件放到一个地方,能让pip找到就行, 不放scripts下面的话, 恐怕会报错“FileNotFoundError" 3. 走到pi ...
- jenkins1
持续集成工具: Jenkins 和 Hudson是同源的. 甲骨文和开源社区之间的关系破裂,该项目被分成两个独立的项目. Jenkins:由大部分原始开发人员组成,Hudson:由甲骨文公司继续管理 ...
- HDU 1207 汉诺塔II (递推)
经典的汉诺塔问题经常作为一个递归的经典例题存在.可能有人并不知道汉诺塔问题的典故.汉诺塔来源于印度传说的一个故事,上帝创造世界时作了三根金刚石柱子,在一根柱子上从下往上按大小顺序摞着64片黄金圆盘.上 ...
- Python+OpenCV图像处理(十)—— 图像二值化
简介:图像二值化就是将图像上的像素点的灰度值设置为0或255,也就是将整个图像呈现出明显的黑白效果的过程. 一.普通图像二值化 代码如下: import cv2 as cv import numpy ...
- Eloquent JavaScript #11# The Document Object Model
索引 Notes js与html DOM 在DOM树中移动 在DOM中寻找元素 改变Document 创建节点 html元素属性 布局 style CSS选择器 动画 Exercises Build ...
- Linux使用退格键时出现^H解决方法
以前在linux下执行脚本不注意输错内容需要删除时总是出现^H ,以前不知道真相的我没办法只有再重头运行一次脚本,后来发现其实时有解决办法的,所以记录一下. ^H不是H键的意思,是backspace. ...
- curl 抓取图片
/** * curl 抓取图片 * @param $url * @return mixed */ public static function downLoadImage($url) { $heade ...
- django模板-自定义标签、过滤器
自定义标签或者过滤器的步骤 ①将要创建自定义标签或过滤器的app加入settings文件的installed_apps中 ②在app中创建templatetags目录,类型为包即packages ③在 ...
- BeanUtils工具的使用
beanutils的下载地址:http://commons.apache.org/proper/commons-beanutils/download_beanutils.cgi 该压缩包有测试的代码: ...
- Linux 流量监控工具 iftop
Linux 流量监控工具 iftop Iftop工具主要用来显示本机网络流量情况及各相互通信的流量集合,如单独同哪台机器间的流量大小,非常适合于代理服务器和iptables服务器使用,这样可以方便的查 ...