首页 > 编程 > Python > 正文

Python中Random和Math模块学习笔记

2020-02-23 01:15:25
字体:
来源:转载
供稿:网友

由于最近经常使用到Python中random,math和time``datetime模块, 所以决定花时间系统的学习一下

1. math模块

math中的函数不可以用于太过复杂的数的运算, 如果需要复杂数的运行最好使用cmath模块中同名函数, 如果想要更加高级的数学功能,可以考虑选择标准库之外的numpy和scipy模块,它们不但支持数组和矩阵运算,还有丰富的数学和物理方程可供使用

1.1. 数学常量

math.pi 这个数学常量等于 3.141592...
math.e 这个数学常量 e = 2.718281...,

1.2. 常用简单函数

math.ceil(x) : 对x向上取整,返回最小整数值大于或者等于x
代码如下:
# -*- coding:utf-8 -*-
import math  #仅在第一次声明, 以下都将省略
print math.ceil(math.pi)  #math.pi是圆周率pi, 类似于C/C++中的宏
//输出4

math.floor(x) : 对x向下取整, 返回整数值小于或者等于x
代码如下:
>>> import math
>>> math.floor(math.pi)
3.0

math.pow(x,y) : 指数运算,得到x的y次方
代码如下:
>>> math.pow(2, 3)
8.0

math.log(x[, base]) : 对数运算,默认基底为e的对数运算。使用base参数时,改变对数的基底, 变为以base为底的对数运算
代码如下:
>>> math.log(10)
2.302585092994046
>>> math.log(8, 2)   #log(x)/log(base).
3.0

math.sqrt(x) 平方根计算
代码如下:
>>> math.sqrt(4)
2.0

math.fabs(x) 取绝对值
math.factorial(x) 求阶乘, 即x!
math.exp(x) 求e的x次方
1.3. 三角函数
以下函数都接收一个弧度(radian)为单位的x作为参数
代码如下:
math.acos(x) #求arccos(x)
math.asin(x) #求arcsin(x)
math.atan(x) #求arctan(x)
math.cos(x)  #求cos(x)
math.sin(x)  #求sin(x)
math.tan(x)  #求tan(x)

math.degrees(x) 角度制转化为弧度制
math.radians(x) 弧度制转化为角度制
代码如下:
>>> math.degrees(math.pi / 2)
90.0

1.5. 双曲函数和特殊函数

math.sinh(x), math.cosh(x), math.tanh(x), math.asinh(x), math.acosh(x), math.atanh(x)
还有些函数基本没用过

2. random模块

random模块的作用是产生随机数, 这个模块实现了伪随机数产生器

1.1. 常用函数

random.seed([x]) 用户初始化一个随机数种子, 可选参数可以是任何hashtable对象,默认使用系统时间
random.randint(a, b) 返回一个a到b之间的整数

random.randrange([start], stop[, step]) 从指定范围内,按指定基数递增的集合中 获取一个随机数。如:random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, … 96, 98]序列中获取一个随机数。random.randrange(10, 100, 2)在结果上与 random.choice(range(10, 100, 2) 等效。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表