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
用来检查一个条件,如果它为真,就不做任何事。如果它为假,则会抛出AssertError并且包含错误信息。
例如:
py> x = 23 py> assert x > 0 , "x is not zero or negative" py> assert x % 2 = = 0 , "x is not an even number" Traceback (most recent call last): File "", line 1 , in AssertionError: x is not an even number |
#常用在代码开头的注释
assert
target
in
(x, y, z)
if
target
=
=
x:
run_x_code()
elif
target
=
=
y:
run_y_code()
else
:
assert
target
=
=
z
run_z_code()
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之条件 循环和其他语句 2014-4-6
#条件 循环和其他语句 23:30pm-1:431.print和import的更多信息 使用逗号将多个表达式输出 >>> print 'age:',42 age: 42 >&g ...
- 一步一步学python(五) -条件 循环和其他语句
1.print 使用逗号输出 - 打印多个表达式也是可行的,但要用逗号隔开 >>> print 'chentongxin',23 SyntaxError: invalid synta ...
- Python 零基础 快速入门 趣味教程 (咪博士 海龟绘图 turtle) 7. 条件循环
条件循环能够让程序在条件成立时(即为真时)重复执行循环体中的语句.如果条件一直成立(即永远不会为假),则循环会一直进行下去,不会停止.如果初始时,条件不成立,则循环 1 次也不会执行.Python 中 ...
- Python 3语法小记(六)条件、循环和assert、pass、del
条件: if 条件: 语句块 elif: 语句块 else: 语句块 elif 表示 else if 这居然是合法的!!!1 < x < 2!!! >> ...
- python学习笔记2_条件循环和其他语句
一.条件循环和其他语句 1.print和import的更多信息. 1.1.使用逗号输出 //print() 打印多个表达式是可行的,用逗号隔开. 在脚本中,两个print语句想在一行输出 ...
- Python基础教程之第5章 条件, 循环和其它语句
Python 2.7.5 (default, May 15 2013, 22:43:36) [MSC v.1500 32 bit (Intel)] on win32 #Chapter 5 条件, 循环 ...
- python变量、条件循环语句
1. 变量名 - 字母 - 数字 - 下划线 #数字不能开头:不能是关键字:最好不好和python内置的函数等重复 2. 条件语句 缩进用4个空格(Tab键)注意缩进如果是空格键和Tab键混用, ...
- Python的条件判断与循环
1.if语句 Python中条件选择语句的关键字为:if .elif .else这三个.其基本形式如下 if condition: blockelif condition: block...else: ...
- Python条件循环判断
1.条件判断语句 Python中条件选择语句的关键字为:if .elif .else这三个.其基本形式如下: 1 2 3 4 5 6 7 8 9 age_of_cc = 27 age = int( ...
随机推荐
- CSS 3中边框怎么用
(1)设置边框图片的来源 图片边框默认只在四个顶点显示 none: 无背景图片; border-image-source: url('borderImage.png'); (2)边框图片的分割 将图片 ...
- Monkey测试的策略和分析
Monkey测试针对不同的对象和不同的目的采用不同的测试方案,首先测试的对象.目的及类型如下: 测试的类型分为:应用程序的稳定性测试和压力测试 测试对象分为:单一apk和apk集合 测试的目的分为:解 ...
- eclipse中新建jni工程
1.什么是NDK 网上很多不多说,全称是Android Native Developer Kit,是一个工具合集,我理解可以把c/c++打包成.so文件 这是目录结构,要用到指令ndk-build 需 ...
- 转---- javascript prototype介绍的文章
JavaScript是基于对象的,任何元素都可以看成对象.然而,类型和对象是不同的.本文中,我们除了讨论类型和对象的一些特点之外,更重要的是研究如何写出好的并且利于重用的类型.毕竟,JavaScrip ...
- osg,qt编译的一些问题
osg编译例子的时候,打开文件就出问题,可能是一些不兼容的问题 qt编译的是时候要添加qt和vs2010的整合工具,这样才能把 vs2010里面的QTDIR变量和环境变量QTDIR关联起来 同是右击文 ...
- Python 代码优化常见技巧
代码优化能够让程序运行更快,它是在不改变程序运行结果的情况下使得程序的运行效率更高,根据 80/20 原则,实现程序的重构.优化.扩展以及文档相关的事情通常需要消耗 80% 的工作量.优化通常包含两方 ...
- java中Commons-fileupload实现上传
java中Commons-fileupload组件实现上传 在实现功能之前需要导入两个jar文件,分别是 commons-fileupload-1.3.1.jar 和 commons-io.jar 文 ...
- HiveQL(HiveSQL)跟普通SQL最大区别一直使用PIG,而今也需要兼顾HIVE
HiveQL(Hive SQL)跟普通SQL最大区别 一直使用PIG,而今也需要兼顾HIVE.网上搜了点资料,感觉挺有用,这里翻译过来.翻译估计不太准确,待自己熟悉HIVE后再慢慢总结. * No t ...
- sqoop的命令行操作
- DOM优化
一:DOM与浏览器: 重排:改变页面的内容. 重绘:浏览器显示的内容. 添加顺序:尽量在appendchild之前. 合并DOM操作-利用csstext, 缓存布局信息 文档碎片. 二 DOM 与事件 ...