python学习史—-程序的基本结构(二):操作符与函数

常见数据类型

int:整数类型
float:浮点类型
bool:布尔值(true and false)
str:字符串类型

编程中函数的概念

自己定义函数

1.我们先要定义函数,也就是定义它的名字(叫做 函数名 function name)、若干输入变量(叫做 参数 argument)以及如何通过输入变量算出函数的值(叫做 返回值 return value)

2.给它具体的参数值,它就给出具体的返回值

调用已有函数术语叫(call)

python内置

例如:
1.print(a, b,...):在命令行输出界面打印输入的参数(可以是各种类型的数据);
2.type(x):返回参数 x 的数据类型;
3.abs(x):返回参数 x(整数或者浮点数)的绝对值。
4.isinstance(x, c)x是参数名字,c是参数类型!如果正确返回布尔值true否则false

图片[1]-python学习史—-程序的基本结构(二):操作符与函数-学霸博客

非python,应用外部的模块

第二个例子是 Python 的平方根函数 math.sqrt(x),这个函数前面有个 math,这表示函数 sqrt(x) 不在 Python 的内置环境中,而是放在一个叫 math 的函数包(学名叫 模块 module)里

方法一:全局

1.首先引入需要的module
import xxxxx
2.调用包里面的函数(列如我需要调用math这个包里面的开根号的函数)
math.sqrt(16)

方法二:从对应的模块里指明引入这一个函数,使用时就不用带上模块名了

from math import sqrt
sqrt ()
小结:
我们可以看到 sqrt(x) 函数可以接受整数或者浮点数输入,返回值是浮点数。

定义函数

理解一下:在 Python 里函数的定义以关键字 def 开始,后面依次是函数名、小括号括起来的参数列表和一个冒号,之后的代码就是函数的算法定义,直到关键字 return 开始的 返回语句,这个返回语句会终止函数的运行,并把 return 后面的值作为函数的返回值,回到调用函数的地方。

图片[2]-python学习史—-程序的基本结构(二):操作符与函数-学霸博客
  • 首先用 3 和 4 作为参数来调用 f() 函数;
  • 函数 f() 开始执行,把值 3 赋给参数变量 a,4 赋给 b,然后执行函数体;
  • 函数体计算出返回值 5.0 并返回;
  • 用返回值 5.0 替换掉 f() 的位置,相当于执行赋值 result = 5.0
  • 用 5.0 作为参数值调用内置的 print() 函数,打印出 5.0(print() 没有返回值)。

熟练之后我们可以把后两行简化成一句 print(f(3, 4)),效果是完全一样的。

插播:代码缩进

所谓代码缩进就是一行代码不顶格写,而是在行首空若干格再写。缩进可以很多层,比如 Python 中第一层缩进空四格,第二层缩进空八格,第三层缩进空十二格,依此类推。程序员都喜欢用“等宽字体(fix-width font)”,就是因为等宽字体在缩进时非常整齐美观。

缩进是为了让代码层次更加鲜明地呈现出来。比如上面函数定义的代码,函数体的部分是“隶属于”函数定义 def 语句的,是它的组成部分,所以缩进一层表示这个从属关系;而后面的函数调用则不是,所以最后两行不缩进,和 def 语句平齐,代表是同一层级的代码。

在 Python 中缩进是强制的,如果不进行正确的缩进,比如如果函数体没有正确的缩进,解释器会因为找不到必须的部分而报错。

目前主流的程序编辑器都提供了自动缩进、自动排版的功能,在 VSCode 和 Jupyter Notebook 中书写代码时大部分时候都会自动正确的缩进,所以很方便。

对于初学者来说,知道有这么回事,然后多看,慢慢就会习惯成自然,和多听多看学语言是差不多的道理。

函数的意义

函数是编程中最重要的概念之一。实现它有助于我们实现程序的“模块化(modulization)”,我们可以把特定的工作用一个函数来实现,然后在需要的地方反复地调用它。这是一种代码重用的方法,一个函数就好像乐高积木里的一个组件,我们可以通过组合各种不同功能的函数来实现复杂的目标。

函数还是协作编程的基础。如果我们实现了一个很有用的函数,我们可以写一个文档说明函数的输入参数和返回值是什么,这样的文档叫做调用接口(interface),别人都可以照此使用我们写的函数,甚至不需要了解它是怎么实现的(比如我们就直接拿了 math.sqrt() 来用而不需要自己写一个)。函数天生就把自己的接口和实现分离开,让协作和复用成果更容易。

模块化 和 接口独立 是编程时最重要的两个思维模型(没有之一),我们在后面还会深入介绍。

  • 我们可以通过声明函数名、函数参数列表以及计算函数返回值的算法来定义一个函数;在 Python 中通过 def 和 return 两个关键字来做这件事;
  • 定义好的函数可以随时被调用,送入具体的参数值,得到函数返回值,返回值可以用于赋值也可以用作参数值来调用其他函数;
  • 函数是编程中重要的概念,我们在第四部分还会深入讲解;
  • 了解 Python 的缩进规则。

小彩蛋:初次定义函数

图片[3]-python学习史—-程序的基本结构(二):操作符与函数-学霸博客
© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
评论 抢沙发

    暂无评论内容