PYTHON基础语法
一、python条件控制
Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块。
可以通过下图来简单了解条件语句的执行过程:
Python中if语句的一般形式如下所示:
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
注意:
- 1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
- 2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
- 3、在Python中没有switch – case语句。
下面用一个猜数字游戏来说明条件控制的使用:
# -*- coding:utf8 -*-
import random
number = random.randint(0, 100)
print("猜数字游戏开始...")
guess = -1
while guess != number:
guess = int(input("请输入你猜的数字:"))
if guess == number:
print("恭喜你,猜对了。")
break
elif guess < number:
print("猜的数字小了")
else:
print("猜的数字大了")
二、循环语句
Python 中的循环语句有 for 和 while。
Python 循环语句的控制结构图如下所示:
- while 循环
Python 中 while 语句的一般形式:
while 判断条件(condition):
执行语句(statements)……
执行流程图如下:
同样需要注意冒号和缩进。另外,在 Python 中没有 do…while 循环。
- while 循环使用 else 语句
如果 while 后面的条件语句为 false 时,则执行 else 的语句块。
语法格式如下:
while <expr>:
<statement(s)>
else:
<additional_statement(s)>
expr 条件语句为 true 则执行 statement(s) 语句块,如果为 false,则执行 additional_statement(s)。
- for 语句
Python for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。
for循环的一般格式如下:
for <variable> in <sequence>:
<statements>
else:
<statements>
- range()函数
- break 和 continue 语句及循环中的 else 子句
break 语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行。
continue 语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环。
- pass 语句
Python pass是空语句,是为了保持程序结构的完整性。
三、迭代器与生成器迭代器
迭代是Python最强大的功能之一,是访问集合元素的一种方式。
迭代器是一个可以记住遍历的位置的对象。
迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。
迭代器有两个基本的方法:iter() 和 next()。
字符串,列表或元组对象都可用于创建迭代器:
- 生成器
在 Python 中,使用了 yield 的函数被称为生成器(generator)。
跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。
在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回 yield 的值, 并在下一次执行 next() 方法时从当前位置继续运行。
调用一个生成器函数,返回的是一个迭代器对象
四、参考资料
1.Python3 条件控制(https://www.runoob.com/python3/python3-conditional-statements.html)
2.Python3 循环语句(https://www.runoob.com/python3/python3-loop.html)
3.Python3 迭代器与生成器(https://www.runoob.com/python3/python3-iterator-generator.html)