学习目标
基本内容
常用函数
Python中的函数分为内置函数和模块函数。
(1)内置函数
- 内置函数(BIF,built-in functions)是Python内置对象类型之一,不需要导入任何模块即可使用一类函数。
- 执行dir(_builtins_)可以列出所有的内置函数。
- 使用help(函数名)可以查看某个函数的用法。
- abs(x):返回数字x的绝对值或复数x的模。
- bin(x)、oct(x)、hex(x):把整数x转换为二进制、八进制、十六进制的表示形式。
- bytes(x):把指定对象x转换为字节串表示形式。
- float(x):把整数或字符串x转换为浮点数。
- int(x[, d]):返回实数(float)、分数(Fraction)或高精度实数(Decimal)x的整数部分,或把d进制的字符串x转换为十进制并返回,d默认为十进制。
- chr(x):返回Unicode编码为x的字符。
- ord(x):返回1个字符x的Unicode编码。
- isinstance(obj, type):测试对象obj是否属于指定类型type。
- type(obj):返回对象obj的类型。
- max(x)、min(x):返回可迭代对象x中的最大值、最小值。
- len(obj):返回对象obj包含的元素个数。
- reversed(seq):返回seq中所有元素逆序后的迭代器对象。
- sorted(iterable, key = None, reverse = False):返回排序后的列表,其中iterable表示要排序的序列或迭代对象,key用来指定排序规则或依据,reverse用来指定升序或降序,默认为升序。该函数不改变iterable内任何元素的顺序。
- sum(x, start = 0):返回序列x中所有元素之和。
- exit():退出当前解释器环境。
(2)模块函数
- math模块
- math模块提供了众多功能强大的数学函数,可以有效提高编程效率,使用这些函数时,需要使用import math导入math模块。
| 常数 |
描述 |
| math.pi |
圆周率pi |
| math.e |
自然常数e |
| math.tau |
数学常数$\tau$ |
| math.inf |
正无穷大 |
| math.nan |
非浮点数标记,NaN(Not a Number) |
| 函数或常量 |
含义 |
| math.pi |
圆周率$\pi$ |
| math.e |
自然常数e |
| math.ceil(x) |
对浮点数向上取整 |
| math.floor(x) |
对浮点数向下取整 |
| math.fabs(x) |
求x的绝对值 |
| math.pow(x, y) |
计算x的y次方 |
| math.log(x) |
以e为基数的对数 |
| math.log10(x) |
以10为基数的对数 |
| math.sqrt(x) |
平方根 |
| math.exp(x) |
e的x次幂 |
| math.degrees(x) |
将弧度值转换为角度值 |
| math.radians(x) |
将角度值转换为弧度值 |
| math.sin(x) |
正弦函数 |
| math.cos(x) |
余弦函数 |
| math.tan(x) |
正切函数 |
| math.asin(x) |
反正弦函数,$x\in[-1.0, 1.0]$ |
| math.acos(x) |
反余弦函数,$x\in[-1.0, 1.0]$ |
| math.atan(x) |
反正切函数 |
import math
print(math.pi)
print(math.e)
print(math.tau)
print(math.inf)
print(math.log10(100))
3.141592653589793
2.718281828459045
6.283185307179586
inf
2.0
- random模块
- 在编写程序时,经常需要提供一些随机数据。大多数编程语言提供了生成伪随机数的函数,在Python中这类函数被封装在random模块中。
| 函数名 |
说明 |
举例 |
| random.random() |
返回[0.0, 1.0]区间内的一个随机小数 |
random.random()返回0.9523521796999529 |
| random.uniform(a, b) |
返回[a, b]区间内的一个随机小数 |
random.uniform(1, 3)返回2.3403540401554146 |
| random.randint(a, b) |
返回[a, b]区间内的一个随机整数 |
random.randint(1, 3)返回3 |
| random.randrange([start], end, [step]) |
返回[start, end)区间内的一个整数,start和step默认都是1 |
random.randrange(1, 10)返回5 |
| random.choice() |
随机返回给定序列中的一个元素 |
random.choice(['a', 'b', 'c'])返回'c' |
| random.shuffle(x, [random]) |
将可变序列的所有元素随机排列 |
random.shuffle([1, 2, 3, 4])返回[1, 4, 3, 2] |
import random
print(random.random())
print(random.uniform(1, 3))
print(random.randint(1, 3))
print(random.randrange(1, 3))
print(random.choice(['a', 'b', 'c', 'd']))
list_test = [1, 2, 3, 4]
random.shuffle(list_test, None)
print(list_test)
0.8957997253625459
2.5182929834893155
2
1
a
[2, 4, 3, 1]