Python标准库之Math,Random模块使用详解

目录
  • 数学模块
    • ceil -- 上取整
    • floor -- 下取整
    • 四舍五入
    • pow -- 幂运算
    • sqrt -- 开平方运算
    • fabs -- 绝对值
    • modf -- 拆分整数小数
    • copysign -- 正负拷贝
    • fsum -- 序列和
    • pi -- 圆周率常数
    • factorial -- 因数
  • 随机模块
    • random -- 获取 0~~1 之间的小数
    • randrange -- 获取指定范围内的整数
    • randint -- 获取指定范围整数
    • uniform -- 获取指定范围内随机小数(左闭右开)
    • choice -- 随机获取序列中的值(多选一)
    • sample -- 随机获取序列中的值(多选多,返回列表)
    • shuffle -- 随机打乱序列中的值(原地址操作)

数学模块

import math

ceil -- 上取整

对一个数向上取整(进一法),取相邻最近的两个整数的最大值。

import math
res = math.ceil(4.1)
print(res)  # 5

floor -- 下取整

对一个数向下取整(退一法),取相邻最近的两个整数的最小值。

import math
res = math.floor(-3.9)
print(res)  # -4

四舍五入

将常用的内置函数 -- round。

pow -- 幂运算

计算一个数字的N次方。

import math

""" 调用的数学模块中的方法和内置的主要区别就是内置返回整数,数学模块返回小数 """

# 数学模块
res = math.pow(2, 3)
print(res)  # 8.0

# 内置函数
res = pow(2, 3)
print(res)  # 8

# 更简单的方法就是使用 ** 进行幂运算
res = 2 ** 3
print(res)  # 8

sqrt -- 开平方运算

import math
res = math.sqrt(9)  # 结果为浮点型
print(res)  # 3.0

fabs -- 绝对值

import math

""" 调用的数学模块中的方法和内置的主要区别就是内置返回整数,数学模块返回小数 """

# 数学模块
res = math.fabs(-12341234123)
print(res)  # 12341234123.0

# 内置函数
res = abs(-12341234123)
print(res)  #12341234123

modf -- 拆分整数小数

将一个数值拆分为小数和整数两个部分,组成元组,值为浮点型。

import math
res = math.modf(100.666)
print(res)  # (0.6659999999999968, 100.0)

copysign -- 正负拷贝

将第二个参数的正负状态拷贝给第一参数。(返回浮点型)

import math
res = math.copysign(100, -200)
print(res)  # -100.0

fsum -- 序列和

将一个容器中的元素进行求和运算(结果为浮点数)

import math
lst = [1, 2, 3]
res = math.fsum(lst)
print(res)  # 6.0

pi -- 圆周率常数

import math
res = math.pi
print(res)  # 3.141592653589793

factorial -- 因数

import math

# 求5的因数
factor = math.factorial(5)
print(factor)  # 120

随机模块

import random

random -- 获取 0~~1 之间的小数

random 随机获取0 ~ 1之间的小数(左闭右开)0 <= x < 1

import random
res = random.random()
print(res)  # 0.15195915170299268

randrange -- 获取指定范围内的整数

语法:rangrange(start, end[, step])

randint -- 获取指定范围整数

语法:randint(a, b)

相比 randrange 灵活性低,但是结束值可用

uniform -- 获取指定范围内随机小数(左闭右开)

import random

# uniform 获取指定范围内的随机小数(左闭右开)
res = random.uniform(1, 3)
print(res)  # 2.81589512983781

# 因为内置机制的原因(uniform 可以将数值颠倒,并达到相同的效果)
res = random.uniform(3, 1)
print(res)  # 1.4023313207919326

choice -- 随机获取序列中的值(多选一)

import random

# 可以尝试使用 randrange 实现

lst = ['A', 'B', 'C', 'D', 'E']
res = random.choice(lst)
print(res)  # E

sample -- 随机获取序列中的值(多选多,返回列表)

语法:sample(poplation, num)

import random

lst = ['A', 'B', 'C', 'D', 'E', 'F']

res = random.sample(lst, 1)
print(res)  # ['F']

res = random.sample(lst, 2)
print(res)  # ['C', 'A']

shuffle -- 随机打乱序列中的值(原地址操作)

import random

lst = ['A', 'B', 'C', 'D', 'E', 'F']

random.shuffle(lst)
print(lst)  # ['F', 'D', 'C', 'B', 'E', 'A']

实现随机验证码

import random

def getVer():
    ver_code = ''
    # 随机抽取四个字符
    for i in range(4):
        s_char = chr(random.randrange(97, 123))
        b_char = chr(random.randrange(65, 91))
        num = str(random.randrange(10))
        lst = [s_char, b_char, num]
        ver_code += random.choice(lst)
    return ver_code

ver = getVer()
print(ver)  # b4Vq

以上就是Python标准库之Math,Random模块使用详解的详细内容,更多关于Python Math Random模块的资料请关注我们其它相关文章!

(0)

相关推荐

  • Python random模块的运用详解

    目录 1.随机取小数: 2.整数的随机选取: 3.随机列表取数,元素打乱: 总结 1.随机取小数: import random print(random.runiform(a,b)) #a-b之间小数的选取 print(random.random()) #0-1之间小数随机选取 输出:0.03815542754382306 print(random.uniform(2,4)) 输出:3.560120761832978 2.整数的随机选取: import random print(random.r

  • Python中Random和Math模块学习笔记

    由于最近经常使用到Python中random,math和time``datetime模块, 所以决定花时间系统的学习一下 1. math模块 math中的函数不可以用于太过复杂的数的运算, 如果需要复杂数的运行最好使用cmath模块中同名函数, 如果想要更加高级的数学功能,可以考虑选择标准库之外的numpy和scipy模块,它们不但支持数组和矩阵运算,还有丰富的数学和物理方程可供使用 1.1. 数学常量 math.pi 这个数学常量等于 3.141592... math.e 这个数学常量 e =

  • Python标准库之随机数 (math包、random包)介绍

    我们已经在Python运算中看到Python最基本的数学运算功能.此外,math包补充了更多的函数.当然,如果想要更加高级的数学功能,可以考虑选择标准库之外的numpy和scipy项目,它们不但支持数组和矩阵运算,还有丰富的数学和物理方程可供使用. 此外,random包可以用来生成随机数.随机数不仅可以用于数学用途,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性. math包 math包主要处理数学相关的运算.math包定义了两个常数: 复制代码 代码如下: math.e   # 自

  • Python中非常实用的Math模块函数教程详解

    目录 math模块常数 1. 圆周率 2. Tau (τ) 3. 欧拉数 4. 无限 5. 不是数字 算术函数 1. factorial() 2. ceil() 3. floor() 4. trunc() 5. isclose() 幂函数 1. exp() 2. 对数函数 其他重要的math模块功能 由于该math模块与 Python 版本一起打包,因此您不必单独安装它,直接导入: import math math模块常数 Pythonmath模块提供了多种预定义常量.访问这些常量提供了几个优点

  • 一篇文章带你了解python标准库--math模块

    目录 1. math模块中的常用函数 2. 案例 2.1 浮点数求整 2.2 对元组里的每个元素求和 2.3 求数的绝对值 总结 python语言的一大优势:为科学计算提供了大量的支持功能,math模块提供了很多数学计算函数. math模块定义了一些数学模块,这个模块属于编译系统自带,因此它可以被无条件调用,需要注意的是,这些函数无法应用于复数. 1. math模块中的常用函数 2. 案例 2.1 浮点数求整 1.用trunc(x)取整,x为浮点数 >>> import math >

  • Python学习之随机模块random详解

    目录 random.random() random.uniform() random.randint() random.choice() random.sample() random.randrange() random 模块 - 抽奖小案例 random 模块 - 双色球小案例 该章节我们来学习一下 Python 中非常简单但也非常有用的模块 —> random ,此模块主要用于生成随机数.接下面我们就来了解一下 random 模块中最常见的几种方法. random.random() 功能:随

  • Python标准库之Math,Random模块使用详解

    目录 数学模块 ceil -- 上取整 floor -- 下取整 四舍五入 pow -- 幂运算 sqrt -- 开平方运算 fabs -- 绝对值 modf -- 拆分整数小数 copysign -- 正负拷贝 fsum -- 序列和 pi -- 圆周率常数 factorial -- 因数 随机模块 random -- 获取 0~~1 之间的小数 randrange -- 获取指定范围内的整数 randint -- 获取指定范围整数 uniform -- 获取指定范围内随机小数(左闭右开) c

  • Python图像处理库PIL的ImageDraw模块介绍详解

    ImageDraw模块提供了图像对象的简单2D绘制.用户可以使用这个模块创建新的图像,注释或润饰已存在图像,为web应用实时产生各种图形. PIL中一个更高级绘图库见The aggdraw Module 一.ImageDraw模块的概念 1.  Coordinates 绘图接口使用和PIL一样的坐标系统,即(0,0)为左上角. 2.  Colours 为了指定颜色,用户可以使用数字或者元组,对应用户使用函数Image.new或者Image.putpixel.对于模式为"1","

  • Python图像处理库PIL的ImageGrab模块介绍详解

    ImageGrab模块用于将当前屏幕的内容或者剪贴板上的内容拷贝到PIL图像内存. 当前版本只支持windows系统. 一.ImageGrab模块的函数 1.  Grab 定义:ImageGrab.grab()⇒ image ImageGrab.grab(bbox) ⇒ image 含义:(New in 1.1.3)抓取当前屏幕的快照,返回一个模式为"RGB"的图像.参数边界框用于限制只拷贝当前屏幕的一部分区域. 例子: >>> from PIL importImag

  • Python标准库中的logging用法示例详解

    目录 1.logging的介绍 2.简单用法示例 3.日志级别 4.打印格式的各个参数 5.日志输出到指定文件 6.日志回滚(按照文件大小滚动) 7.日志回滚(按照时间滚动) 1.logging的介绍 logging是Python标准库中记录常用的记录日志库,通过logging模块存储各种格式的日志,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等. 2.简单用法示例 首先创建一个logger.py的文件,其里面的代码如下所示: import logging # 1.创

  • Python标准库06之子进程 (subprocess包) 详解

    这里的内容以Linux进程基础和Linux文本流为基础.subprocess包主要功能是执行外部的命令和程序.比如说,我需要使用wget下载文件.我在Python中调用wget程序.从这个意义上来说,subprocess的功能与shell类似. subprocess以及常用的封装函数 当我们运行python的时候,我们都是在创建并运行一个进程.正如我们在Linux进程基础中介绍的那样,一个进程可以fork一个子进程,并让这个子进程exec另外一个程序.在Python中,我们通过标准库中的subp

  • 使用Python标准库中的wave模块绘制乐谱的简单教程

    在本文中,我们将探讨一种简洁的方式,以此来可视化你的MP3音乐收藏.此方法最终的结果将是一个映射你所有歌曲的正六边形网格地图,其中相似的音轨将处于相邻的位置.不同区域的颜色对应不同的音乐流派(例如:古典.嘻哈.重摇滚).举个例子来说,下面是我所收藏音乐中三张专辑的映射图:Paganini的<Violin Caprices>.Eminem的<The Eminem Show>和Coldplay的<X&Y>. 为了让它更加有趣(在某些情况下更简单),我强加了一些限制.

  • Python标准库datetime之datetime模块用法分析详解

    目录 1.日期时间对象 2.创建日期时间对象 2.1.通过datetime.datetime.utcnow()创建 2.2.通过datetime.datetime.today()函数创建 2.3.通过datetime.datetime.now()创建 2.4.通过datetime.datetime()创建 2.5.查看创建的对象 2.6.查看datetime可以处理的最大的日期时间对象及最小的日期时间对象 3.日期事件对象的属性 4.日期时间对象转换为时间元组 5.将日期时间对象转化为公元历开始

  • python标准库学习之sys模块详解

    目录 前言 处理命令行参数 sys.exit(n) 退出程序,正常退出时exit(0) sys.version 获取Python解释程序的版本信息 sys.platform 返回操作系统平台名称 sys.stdin.readline()与input sys.stdout与print 总结 补充:sys 模块的实例 前言 sys模块是与python解释器交互的一个接口.sys 模块提供了许多函数和变量来处理 Python 运行时环境的不同部分. 处理命令行参数 在解释器启动后, argv 列表包含

  • Python3 Random模块代码详解

    描述 random() 方法返回随机生成的一个实数,它在[0,1)范围内. import random help(random) FUNCTIONS betavariate(alpha, beta) method of Random instance # 随机实例的方法 Beta distribution. # β分布 Conditions on the parameters are alpha > 0 and beta > 0. # 必须传入大于0的alpha 与beta参数 Returne

  • Python Asyncio库之asyncio.task常用函数详解

    目录 前记 0.基础 1.休眠--asyncio.sleep 2.屏蔽取消--asyncio.shield 3.超时--asyncio.wait_for 4.简单的等待--wait 5.迭代可等待对象的完成--asyncio.as_completed 前记 Asyncio在经过一段时间的发展以及获取Curio等第三方库的经验来提供更多的功能,目前高级功能也基本完善,但是相对于其他语言,Python的Asyncio高级功能还是不够的,但好在Asyncio的低级API也比较完善,开发者可以通过参考A

随机推荐