宝宝都能学会的python编程教程4:关系运算符与循环

关系运算符

if 语句

实际应用中的程序,大多不是一撮而就的,而是根据条件不同存在很多分支。

最基本的条件分支结构是if...else...语句即如果。。。否则。。。

在python当中,if condition1:(注意最后的冒号:)称为“语句头”。冒号:之后另起一行缩进的是“语句体”,语句体的行数不限,但至少有一行,否则需要用pass填充(即什么也不做)。

缩进是Python复合语句的关键,初学者经常因缩进不当而导致报错。关于缩进的习惯可以分为两个派别:Tab党,和Space党,即用Tab键或空格键来控制缩进。(我本人常年坚持使用Tab)

if之后必须是一个布尔表达式(如 condition1),当它为 True 时,执行其对应的语句体(branch1),否则向下跳转到后一个语句头(elif)。如果所有的 if 都没有被满足,则执行最后一个 else对应的语句体。

每个if分支所属的程序体都需要缩进,否则会产生语法错误,这与C/C++/Java等使用大括号 {} 的语言不同。

其实我个人认为,使用大括号的代码可读性更高,而且不容易在传播过程中失真。

下面写一个小程序判断一个数是奇数还是偶数

循环

Python只支持两种循环:for 循环和 while 循环。

在语法结构上和 if/else 有些接近,比如语句头需要加冒号(:),语句体需要缩进。

for 循环

在上一课中,我们介绍过对字符串的in和not in运算符:in运算符并非字符串的专利,很多数据类型都具备这样的性质,可以作为“迭代器”。

迭代器

组成 for 循环的一个关键部分就是迭代器。最常用的迭代器其实是列表(list)。字典(dictionary)也可以作为迭代器,迭代对象就是(key)。

这些可以作为迭代器的数据容器,在之后的几节会详细介绍他们的属性,下面先来看一个简单的小例子:

迭代器共有4个元素,分别是4个汉字。for循环迭代了四次,每次取一个字,并执行print()函数。

range()函数

range()函数可以生成特定形式的数值迭代数列,经常配合 for 循环使用。range()读取三个参数,分别对应三种情况:

range(a):一个参数,这个参数就是数列的上限(开区间,不包含这个数本身),下限默认为0。

range(a, b):两个参数分别指定了上下限。下限(a)是闭区间,也包含在其中;而上限(b)则是开区间,不参与计算。

range(a, b, c):三个参数。第三个参数叫步长,前两个例子没有第三个参数,因此都是以默认值 1 为步长。本例中我们人为指定了步长。输出了 10 以内的偶数。值得再次提醒的是,这里的“10以内”不包括10。注意,如果 range(a, b) 的参数 a>b,那么返回的将是一个空数组

如果步长为负数,会返回什么样的结果呢?

看下图

while 循环

while 循环会持续反复执行循环内语句,直到condition == False。

每次执行语句之后,都会重新检查条件是否为真,如果为假则跳出循环。

下面出一个编程小练习:

找出 100 以内三的倍数,放入列表 numbers 中。

numbers = []

# 列表添加元素地方法是:numbers.append()

# >>>> 编程区

# >>>> 编程区

下篇文章我们公布答案。

本文来自企鹅号 - oldriver技术手册媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏互联网杂技

理解javascript闭包前,先理解作用域链

1. 全局作用域(Global Scope)   在代码中任何地方都能访问到的对象拥有全局作用域,一般来说以下几种情形拥有全局作用域:   (1)最外层函数和...

37250
来自专栏简书专栏

Python入门

多媒体应用、WEB开发、网络爬虫、人工智能与机器学习、数据分析处理、服务器运维及其他小工具 知乎链接:用python做一些有趣的事情

27330
来自专栏老司机的技术博客

人人都能学会的python编程教程4:关系运算符与循环

在python当中,if condition1:(注意最后的冒号:)称为“语句头”。冒号:之后另起一行缩进的是“语句体”,语句体的行数不限,但至少有一行,否则需...

34990
来自专栏北京马哥教育

对Python老司机99%有帮助的简明语法总结乱编

本文由马哥教育Python实战开发班6期学员推荐,转载自互联网,作者为赖笔小新,感谢作者的辛苦付出和贡献。 最近发现进入python群的朋友都在你是如何自学py...

32170
来自专栏ShaoYL

OC语言Block 续

14490
来自专栏老司机的技术博客

宝宝都能学会的python编程教程9:dict和set

dict字典 dict和我们小时候用的字典很像,如果你想查一个汉字,你只需要根据某一个拼音就可以很快速的查询到它。 ? 在字典的索引表里(比如部首表)查这个字...

36350
来自专栏求索之路

Effective Java笔记(不含反序列化、并发、注解和枚举)

最近把Effective Java复习了一遍,其中有比较多的java最佳实践可以在平时编程中用到。反序列化、并发、注解和枚举这四章没看,并发这本书里讲的比较简...

369110
来自专栏黑泽君的专栏

【Java面试复习经典】传智播客Java就业班入学测试题及答案解析(2012年版)

  共50道题,每道题2分,总分100分,80分为合格。   注意,题目有多选,也有单选。请认真作答。

19330
来自专栏维C果糖

编程思想 之「异常及错误处理」

在 Java 的异常及错误处理机制中,用Throwable这个类来表示可以作为异常被抛出的类。Throwable对象可以细分为两种类型(指从Throwable继...

98060
来自专栏ShaoYL

OC语言Block 续

337120

扫码关注云+社区

领取腾讯云代金券