Python编程基础05:Python的过程分解和文件IO
人生苦短,我用Python![1]
这次的主要内容主要是介绍Python中的过程分解和文件IO。过程分解包括了函数(function),模块(module)。而文件IO主要是介绍使用Python打开文件并进行读写操作。
过程分解概念
过程分解是一种解决编程问题的策略。它将一个复杂的问题分解为一个一个的小问题,这些小问题更简单,更独立,并且更易于管理,然后通过某种方式来解决这些小问题。通过使用这种方法,编程也会变得简单,更容易理解,更方便做规划和实现。

Fig. 1. 台式机的硬件可拆分也是一种分解思维. Adapted from [2]
要合理的分解这些组件,需要清晰的认识每一个部件的输入和输出。在Python中,过程分解是主要由函数(Function),模块(Module)和类(Class)组成。其中最主要的关键,是提升整体代码的复用性(Reusability)。
函数
函数(Function)是Python中的重要组成部分。函数是一种独立的语句集合,是为完成某一个特定的任务,解决一个特定的问题而定义的。
它可以使用任意数量的参数作为输入,并且返回任意数量任意类型的值。函数需要先创建,然后再进行调用。
函数是对过程或者功能的一种抽象。用户只需要知道怎么把函数用起来去解决问题,而不需要知道函数内部是怎么工作的。
Python中的函数
在Python中,函数是使用关键字def定义的。在函数的开头,需要定义函数的名称和参数(Argument)。函数的名称,参数和返回值构成了函数签名。
函数的组成部分:
- 函数名
- 参数(0或多个)
- 文档注释(可选)
- 函数体
- 返回值(可选)
函数的命名规范:
- 与变量名相同
- 使用
camelCase或者underscore - 必须以字母或者下划线开头,并且只能包含字母、数字或者下划线

Fig. 2. 创建一个函数.
定义一个函数(有参数)
1 | def addition_func(first_arg, second_arg): |
定义一个函数(默认参数)
1 | def addition_func(first_arg=0, second_arg=0): |
调用函数:
- 位置参数(不带关键字): 得按照函数定义的顺序来调用
- 关键字参数: 使用关键字来调用
1
2
3
4
5
6
7
8
9
10
11sum = addition_func(10, 8)
print("The result is", sum)
# The result is 18
sum = addition_func(second_arg=8)
print("The result is", sum)
# The result is 8
sum = addition_func(2, second_arg=8)
print("The result is", sum)
# The result is 10
return和print的区别
return:
return只能用在函数内部,否则会有语法错误- 在一个函数中只会运行一次
return - 在函数里
return后面的代码将不会被运行 - 这个
return的值将会赋予函数的调用者
print:
print可以用在函数外部,也可以用在函数内部- 可以在函数内部执行多次
- 在函数里
print后面的代码可以继续运行 - 这个
print的值将会输出至控制台
main函数
main函数是一个特殊的函数,它指示程序的执行流程,定义了程序的入口点。
1 | def function1(): |