Python 3语法小记(六)条件、循环和assert、pass、del
条件:
if 条件:
语句块
elif:
语句块
else:
语句块
elif 表示 else if
这居然是合法的!!!1 < x < 2!!!
>>> if 1 < x < 2:
print('True') True
and 表示且
>>> if x > 1 and x < 2:
print('True') True
or 表示 或
>>> x
2
>>> if x == 2 or x == 3:
print(x) 2
如果 b 为真则返回a,否则返回 c
a if b else c
>>> 'True' if 1 < x <2 else 'False'
'True'
while 循环
while 条件:
语句块
不需要括号哦!
>>> x
1.2
>>> while x < 2:
print(x)
x += 0.2 1.2
1.4
1.5999999999999999
1.7999999999999998
1.9999999999999998
>>>
经常用 :
while True:
....
if ... :
break
....
for 循环
for something in XXXX:
语句块
即表示对XXXX中的每一个元素,执行某些语句块,XXXX可以是列表,字典,元组,迭代器等等。
>>> for x in range(0,10):
print(x*x) 0
1
4
9
16
25
36
49
64
81
这是 for..else...语句
仅在没有 break 的情况下执行,或者说,只要你没有 break,它就会执行
>>> for n in range(99,81,-1):
root = sqrt(n)
if root == int(root):
print (n)
break
else:
print ("I didn't fint it") I didn't fint it
但你应该尽可能使用列表推导式,因为它更方便,清晰
>>> [x*x for x in range(1,5)]
[1, 4, 9, 16]
>>> [x**2 for x in range(1,10) if x % 2 ==0]
[4, 16, 36, 64]
>>> [(x,y) for x in range(1,3) for y in range(4,6)]
[(1, 4), (1, 5), (2, 4), (2, 5)]
断言 assert
后面语句为真,否则出现 AssertionError
>>> x
1.2
>>> assert x > 1
>>> assert x > 2
Traceback (most recent call last):
File "<pyshell#61>", line 1, in <module>
assert x > 2
AssertionError
>>> assert x > 2, 'x must bigger than 2'
Traceback (most recent call last):
File "<pyshell#64>", line 1, in <module>
assert x > 2, 'x must bigger than 2'
AssertionError: x must bigger than 2
>>>
pass
pass 表示这里什么都没有,不执行任何操作
如果你的程序还有未完成的函数和类等,你可以先添加一些注释,然后代码部分仅仅写一个 pass,这样程序可以运行不会报错,而后期你可以继续完善你的程序
>>> class Nothing:
pass >>>
del
del 删除的只是引用和名称,并不删除值,也就是说,Python 会自动管理内存,负责内存的回收,这也是 Python 运行效率较低的一个原因吧
>>> x = [1,2,3]
>>> y = x #x 和 y指向同一个列表
>>> del x
>>> x
Traceback (most recent call last):
File "<pyshell#41>", line 1, in <module>
x
NameError: name 'x' is not defined
>>> y
[1, 2, 3]
Python 3语法小记(六)条件、循环和assert、pass、del的更多相关文章
- python学习第四讲,python基础语法之判断语句,循环语句
目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...
- 【Python】学习笔记六:循环
循环是一个结构,导致一个程序要重复一定的次数 条件循环也一样,当条件变为假,循环结束 For循环 在python for循环遍历序列,如一个列表或一个字符. for循环语法: ——for iter ...
- 第一章:python基础语法| 字符编码| 条件语句...
1.编程语言介绍 编程就是写代码,让计算机帮你做事情.计算机底层是电路,只认识二进制0和1.机器语言&汇编语言语言进化历史:机器.汇编.高级.机器语言只接受二进制代码:汇编语言是采用英文缩写的 ...
- Python 3语法小记(四)字典 dictionary
字典是Python里面一种无序存储结构,存储的是键值对 key - value.关键字应该为不可变类型,如字符串.整数.包含不可变对象的元组. 字典的创建很简单,用 d = {key1 : value ...
- Python 3语法小记(五)字符串
Python 3 的源码的默认编码方式为 UTF-8 在Python 3,所有的字符串都是使用Unicode编码的字符序列. utf-8 是一种将字符编码成字节序列的方式.字节即字节,并非字符.字符在 ...
- Python 3语法小记(九) 异常 Exception
常见异常: Exception 所有异常的基类 AttributeError 特性应用或赋值失败时引发 IOError ...
- Python基础__Python语法基础、条件、循环
之前主要讨论的是Python的对象,这本节将第一次走进Python的语言之旅,将会介绍条件与循环.本节我们将会涉及到复合语句,简要介绍一下Python的语法规则是有必要的Python语法规则 1.语句 ...
- 【python基础语法】运算符&if条件语句&while循环&for循环(第5天课堂笔记)
""" if语法规则: if 条件比较语句1: # 条件成立的时候 会执行的代码 elif 条件比较语句2: # 条件2成立的时候 会执行的代码 else: # 条件不成 ...
- Python基础(6)--条件、循环
本文的主要内容是 Python 的条件和循环语句以及与它们相关的部分. 我们会深入探讨if, while, for以及与他们相搭配的else,elif,break,continue和pass语句. 本 ...
随机推荐
- linux下测试磁盘的读写IO速度【转】
Reference1:http://server.chinabyte.com/495/12361995.shtmlReference2:https://www.deleak.com/blog/2011 ...
- MYSQL数据库备份与恢复【转】
mysqldump -h主机名 -P端口 -u用户名 -p密码 (–database) 数据库名 > 文件名.sql 在window上需要通过CMD进入mysql安装目录下的bin目录下执行 ...
- Tarjan系列算法总结(hdu 1827,4612,4587,4005)
tarjan一直是我看了头大的问题,省选之前还是得好好系统的学习一下.我按照不同的算法在hdu上选题练习了一下,至少还是有了初步的认识.tarjan嘛,就是维护一个dfsnum[]和一个low[],在 ...
- nojs iis asp.net mvc
http://blogs.msdn.com/b/scott_hanselman/archive/2011/11/29/window-iis-node-js.aspx http://www.hansel ...
- SPRING IN ACTION 第4版笔记-第二章WIRING BEANS-006-当构造函数有集合时的注入
一.当构造函数有集合时,只能用<CONSTRUCTOR-ARG>,不能用C-NAMESPACE 二. 1. package soundsystem.collections; import ...
- 《attodiskbenchmarks-v2.47》说明文件
对于用电脑方便且不喜欢在手机上乱装软件的我来说,很喜欢,特此整理,并在miui首发. 一.软件介绍 ATTO Disk Benchmark是一款电脑端使用的专业测速软件,该软件非常小巧,但却很专业,是 ...
- CKFinder 2.4 ASP.NET 破解
网上的破解教程对于2.4版本来说已经过时了. 以下是CKFinder 2.4 ASP.NET的亲测可用破解方法,经测试,只需修改两处代码. 打开ckfinder.js, 步骤1. 搜索替换如下代码: ...
- Learning WCF Chapter2 WCF Contracts and Serialization
So far I’ve talked about the standards behind it all,but in fact WCF hides most of this from the dev ...
- PowerDesigner使用总结 转
PowerDesigner使用总结 (友情提示:本博文章欢迎转载,但请注明出处:陈新汉,http://www.blogjava.net/hankchen)一.使用PowerDesigner生成HTML ...
- C# json
C# 解析 json JSON(全称为JavaScript Object Notation) 是一种轻量级的数据交换格式.它是基于JavaScript语法标准的一个子集. JSON采用完全独立于语言的 ...