03学习Python

学习记录,欢迎指出错误

流程控制

Python中流程控制语句有

  • if语句
  • for语句
  • while语句

if语句

在Python中if语句的一般形式为:

if condition_1:
    statement_block_1
elif condition_2:
    statement_block_2
.
.
.
else:
    statement_block_3
  • 每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
  • 使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
  • 用elif代替了else if,所以if语句的关键字为:if – elif – else。
  • 在Python中没有switch – case语句。

for语句

在Python中for语句的一般形式为:

for  in :
  
else:
 
  • for循环可以遍历任何序列的项目

while语句

在Python中while语句一般形式为

while 判断条件
    语句
  • 在Python中没有do...while循环

在for和while语句中,可使用breakcontinue语句及循环中的else子句

  • break语句可以跳出for和while的循环体。如果你从for或while循环中终止,任何对应的循环else块将不执行。
  • continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。
  • 循环语句可以有else子句,它在穷尽列表(以for循环)或条件变为假(以while循环)循环终止时被执行,但循环被break终止时不执行。
  • pass语句什么都不做,它只在语法上需要一条语句但程序不需要任何操作时使用。

range()语句

如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列,例如:

>>> for n in range(3):
    print(n)
    
0
1
2

指定区间

>>> for n in range(2,6):
    print(n)
    
2
3
4
5

指定区间并指定增量

>>> for n in range(0, 10, 3):
    print(n)

0
3
6
9

可以是负数,又叫做“步长”

>>> for n in range(0, -10, -3):
    print(n)
    
0
-3
-6
-9

递归函数

  • 在函数内部,可以调用其他函数。如果一个函数在内部调用自己本身,这个函数就是递归函数。
  • 递归函数的有点是定义简单,逻辑清晰,使用递归函数需要注意防止栈溢出。
    在计算机中,函数调用是通过栈(stack)这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出。
  • 通过尾递归解决递归调用栈溢出。
    尾递归是指,在函数返回的时候,调用自己本身,并且return语句不能包含表达式。这样,递归本身不管调用多少次,都只占用一个栈帧,不会出现栈溢出的情况。

你可能感兴趣的:(03学习Python)