1:条件表达式(三元操作符)

Python 在很长的一段时间里没有条件表达式(C ? X : Y), 或称三元运算符。人们试着用 and 和 or 来模拟它, 但大多都是错误的。 根据 FAQ , 正确的方法(并不唯一)是:(C and [X] or [Y])[0]。

唯一的问题是社区不同意这样的语法。最后 Python 2.5 集成的语法确定为: X if C else Y

在 2.5以前的版本中, Python 程序员最多这样做(其实是一个 hack):

>>> smaller = (x < y and [x] or[y])[0]
>>> smaller
3

在 2.5 和更新的版本中, 你可以使用更简明的条件表达式:

>>> smaller = x if x < y else y
>>> smaller
3

2:for语句

Python中的for 语句提供了 Python 中最强大的循环结构。它可以遍历序列成员,可以用在 列表解析 和 生成器表达式中,它会自动地调用迭代器的 next()方法,捕获 StopIteration 异常并结束循环(所有这一切都是在内部发生的)。

和传统语言(例如 C/C++或Java)中的 for 语句不同,Python 的 for 更像是 shell 或是脚本语言中的 foreach 循环。

使用迭代器做 for 循环的代码与使用序列条目几乎完全相同。事实上在大多情况下, 你无法分辨出你迭代的是一个序列还是迭代器。

唯一的区别就是 for 语句会做一些额外的事情。迭代器对象有一个 next() 方法, 调用后返回下一个条目。所有条目迭代完后, 迭代器引发一个 StopIteration 异常告诉程序循环结束。 for 语句在内部调用 next() 并捕获异常。

3:循环与else

Python中,可以在 while 和 for 循环中使用 else 语句。在循环中使用时, else子句只在循环完成后执行, 也就是说 break 语句也会跳过 else 块。

以寻找最大约数为例。 代码如下:

def showMaxFactor(num):
count = num / 2
while count > 1:
if num % count == 0:
print 'largest factor of %d is %d' % (num, count)
break
count -= 1
else:
print num, "is prime"

同样地,for 循环也可以有 else 用于循环后处理。 它和while 循环中的else 处理方式相同。 只要for 循环是正常结束的(不是通过 break ), else 子句就会执行。

Python基础:06条件和循环的更多相关文章

  1. Python基础之条件和循环

    阅读目录 一.if语句 1.1功能 1.2语法 1.2.1:单分支,单重条件判断 1.2.2:单分支,多重条件判断 1.2.3:if + else 1.2.4:多分支if + elif +else 1 ...

  2. Python基础:条件判断 &&循环

    1:条件判断 2:循环 2.1:for 2.2  while 小结: continue :跳出本次循环 进行下次循环,  break :结束循环体.

  3. 『Python基础-7』for循环 & while循环

    『Python基础-7』for循环 & while循环 目录: 循环语句 for循环 while循环 循环的控制语句: break,continue,pass for...else 和 whi ...

  4. 【Python】-NO.99.Note.4.Python -【Python3 条件语句 循环语句】

    1.0.0 Summary Tittle:[Python]-NO.99.Note.4.Python -[Python3 条件语句 循环语句] Style:Python Series:Python Si ...

  5. python基础之条件控制与循环

    Python3 条件控制 Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块. 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户 ...

  6. Python基础__Python语法基础、条件、循环

    之前主要讨论的是Python的对象,这本节将第一次走进Python的语言之旅,将会介绍条件与循环.本节我们将会涉及到复合语句,简要介绍一下Python的语法规则是有必要的Python语法规则 1.语句 ...

  7. Python基础:条件判断与循环的两个要点

    一.条件判断: Python中,条件判断用if语句实现,多个条件判断时用if...elif实现:看下面一段程序 #python 3.3.5 #test if...elif age = 20 if ag ...

  8. Python基础之条件语句和循环

    条件语句 Python中的条件语句分为 if ...else . if ...elif...else  以及if ...else 的嵌套使用: username = input('请输入您的用户名:' ...

  9. python学习第六天:python基础(条件判断、循环)

    条件判断 格式 if <条件判断1>: <执行1> elif <条件判断2>: <执行2> elif <条件判断3>: <执行3> ...

  10. #7 Python顺序、条件、循环语句

    前言 上一节讲解了Python的数据类型和运算,本节将继续深入,涉及Python的语句结构,相当于Python的语法,是以后编写程序的重要基础! 一.顺序语句 顺序语句很好理解,就是按程序的顺序逻辑编 ...

随机推荐

  1. 洛谷2593 [ZJOI2006]超级麻将——可行性dp

    题目:https://www.luogu.org/problemnew/show/P2593 发现三个连续牌的影响范围只有3.相同牌的影响范围只有1之后就可以dp了. O(100^7)T飞. #inc ...

  2. Jdbc封装和对CURD的封装

    1.查询emp表中的所有记录为例 2.测试类 public Emp getByNameAndEmail(String name, String email){ String sql = "s ...

  3. SpringBoot随机数

    # 随机字符串 com.didispace.blog.value=${random.value} # 随机int com.didispace.blog.number=${random.int} # 随 ...

  4. python基础--字符编码以及文件操作

    字符编码: 1.运行程序的三个核心硬件:cpu.内存.硬盘 任何一个程序要是想要运算,肯定是先从硬盘加载到当前的内存中,然后cpu根据指定的指令去执行操作 2.python解释器运行一个py文件的步骤 ...

  5. Lab1 ex1 物理页内存分配算法的实现

    调用流程如下 kern_init --> pmm_init-->page_init-->init_memmap--> pmm_manager->init_memmap 从 ...

  6. ubuntu上用源码进行一键安装mysql

      首先卸载原有的mysql: 首先查看自己的mysql有哪些依赖 #dpkg --list|grep mysql 先卸载 #sudo apt-get remove mysql-common #sud ...

  7. SQL —— 存储过程

    一.什么是存储过程 预先存储好的SQL程序. 保存在SQL Server中(跟视图的存储方式一样) 通过名称和参数执行. 二.存储过程的优点 执行速度更快 允许模块化程序设计 提高系统安全性 减少网络 ...

  8. 微信小程序制作选项卡

    wxml: <view class="tab"><view class="tab-title" bindtap="tabFun&qu ...

  9. NFS客户端挂载目录后无写入权限的解决方案

    转载至:https://blog.csdn.net/younger_china/article/details/52089337 在客户机通过 mount -o rw -t nfs 192.168.1 ...

  10. 【Pyqt5】之高级控件QTableWidget的使用

    1:动态渲染数据+动态添加控件(按钮,进度条) class MainWindow(QWidget, Ui_MainFrom): def __init__(self): super(MainWindow ...