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语句. 本 ...
随机推荐
- HTML 页面加载动画效果
浏览器:Chrome, IE <!doctype html> <html> <head> <title>CSS transform: CSS only ...
- MVVM Light 一个窗口承载两个视图
MVVM Light 一个窗口承载两个视图 原文地址:http://www.codeproject.com/Articles/323187/MVVMLight-Using-Two-Views 本文 ...
- 2016031401 - ubuntu显示桌面快捷键
ubuntu显示桌面快捷键设置 步骤如下:系统设置->键盘->快捷键->窗口->最小化窗口 个人设置的是super+D,super就是window下的win键.
- Linux Makefile analysis for plain usr
一.本文主旨 笔者写了一篇linux内核Makefile整体分析 ,测重于理论分析,对于实际应用不算对头,所以需要写一篇实用性较强的文章,为以后内核.驱动移植做好铺垫. 二.本文内容概要 1.编译哪些 ...
- bzoj 3053 HDU 4347 : The Closest M Points kd树
bzoj 3053 HDU 4347 : The Closest M Points kd树 题目大意:求k维空间内某点的前k近的点. 就是一般的kd树,根据实测发现,kd树的两种建树方式,即按照方差 ...
- Android基础学习
1.specify :指定 2.Nested:嵌套 3.启动模拟器时出现错误信息"Please ensure that adb is correctly located at:XXXXX&q ...
- 玩转createjs
标题党"玩转", 真的是在玩怎么转... 参考一篇很经典的博文:createjs入门 做移动版(750x1334)的时候出来不居中啊, 不是掉在下面就是滑到右面, canvas里面 ...
- SPRING IN ACTION 第4版笔记-第一章-003-AOP介绍
一.目标 要在BraveKnight调用embarkOnQuest()前后各做一些处理(调用Minstrel的方法) 二. 1.minstrel.xml <?xml version=" ...
- 手机归属地查询-IP地址查询-身份证查询-域名备案查询--Api接口
使用这些接口是需要密钥的 公共密钥 appkey: 10003 secret: d1149a30182aa2088ef645309ea193bf 生成后sign: b59bc3ef6191eb9f ...
- struts2文件异步上传
代码结构 用到的js文件: 用到的jar包: jar和js库文件下载地址:下载地址 首先我们写FileAction类 package com.ajaxfile.action; import java. ...