Python之数学(math)和随机数(random)

math包包含了最基本的数学运算函数,如果想要更加高级的数学功能,可以使用标准库外的numpy和scipy库,他们不但支持数组和矩阵运算,还有丰富的数学和物理方程可供使用random包可以用来生成

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

math包包含了最基本的数学运算函数,如果想要更加高级的数学功能,可以使用标准库外的numpy和scipy库,他们不但支持数组和矩阵运算,

还有丰富的数学和物理方程可供使用

random包可以用来生成随机数,随机数不仅可以用于数学用途,还经常被嵌入到算法中

math包

  1. 常数

     math包主要处理数学相关的运算。math包定义了两个常数:

     math.e   # 自然常数e

     math.pi   # 圆周率pi

  2. 常用函数

     math.cell(x)     #对x向上取整

     math.floor(x)      #对x向下取整

     math.pow(x, y)          #x的y次方

     math.log(x)               #以e为低取对数

     math.sqrt(x)              #平方根

     math.sin(x),math.cos(x),math,tan(x),math.atan(x),math.asin(x),math.acos(x)

     math.degrees(x),math.radians(x)     #角度和弧度互换

     math.erf(x),math.gamma(x)              #特殊函数

random包

  1. 常用函数

  • seed(a=none,version=2)
  • random()
  • randint(a,b)
  • uniform(a,b)
  • choice(x)
  • shuffle(x)
  • sample(x,y)

  2. 事例

#coding=utf-8

import random

#生成随机浮点数(0,1)
print ("random():",random.random())

#生成随机1-10之间的整数
print ("randint():", random.randint(1,10))

#随机生成0-20之间的偶数
print ("randrange:", random.randrange(0,21,2))

#随机生成0-20之间的浮点数
print("uniform:", random.uniform(0,20))

#从列表序列中随机取一个数
li = [1,2,3,4,5,6,7,8,9]
print ("choice list:", random.choice(li))
print ("choice string:", random.choice("abcdef"))

#对列表元素随机排序
print ("shuffle forword:", li)
random.shuffle(li)
print ("shuffle back:", li)

#从指定序列中获取指定长度的片段
print ("sample:", random.sample("abcedef", 3))

  3. 事例结果

    >> random(): 0.5133725183742832
    >>randint(): 4
    >>randrange: 6
    >>uniform: 3.0505739812897503
    >>choice list: 2
    >>choice string: a
    >>shuffle forword: [1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>shuffle back: [4, 1, 2, 8, 6, 9, 3, 7, 5]
    >>sample: [‘b’, ‘c’, ‘f’]

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120217.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java定时任务quartz配置_taskregistrar

    java定时任务quartz配置_taskregistrar这篇文章主要介绍了spring中定时任务taskScheduler的相关资料,文中通过示例代码介绍的很详细,相信对大家具有一定的参考价值,有需要的朋友们下面来一起看看吧。前言众所周知在spring3.0版本后,自带了一个定时任务工具,而且使用简单方便,不用配置文件,可以动态改变执行状态。也可以使用cron表达式设置定时任务。被执行的类要实现Runnable接口TaskScheduler接口Tas…

    2022年10月11日
    3
  • 【ZigBee协议栈简介】

    【ZigBee协议栈简介】1、Zigbee协议栈简介  协议是一系列的通信标准,通信双方需要按照这一标准进行正常的数据发射和接收。协议栈是协议的具体实现形式,通俗讲协议栈就是协议和用户之间的一个接口,开发人员通过使用协议栈来使用这个协议,进而实现无线数据收发。  如图1所示:Zigbee协议分为两部分,IEEE802.15.4定义了PHY(物理层)和MAC(介质访问层)技术规范;Zigbee联盟定义了NWK(网络…

    2022年5月28日
    55
  • mysql 多表查询和更新_MySQL update select 多表关联查询更新

    mysql 多表查询和更新_MySQL update select 多表关联查询更新在遇到需要update设置的参数来自从其他表select出的结果时,需要把update和select结合使用,不同数据库支持的形式不一样,在mysql中如下:updateAinnerjoin(selectid,namefromB)conA.id=c.idsetA.name=c.name;根据AB两个表的id相同为条件,把A表的name修改为B的sql语句就如上所示参考…

    2022年5月26日
    35
  • c语言删除数组中重复元素

    c语言删除数组中重复元素原题:把一个数组中的重复元素去掉。如a[12]={1,1,2,7,3,2,3,4,5,8,7,4},输出为:1,2,7,3,4,5,8在csdn上查了一下,发现给出的方法都很复杂,对新手很不友好,于是写了一个比较简单的,源码如下:#include<stdio.h>#defineN12intmain(){inti,j,n=N,k;intnum[N]…

    2022年7月11日
    26
  • java cas原理 CAP技术_fpga和java哪个好

    java cas原理 CAP技术_fpga和java哪个好1:CAS概念及原理CAS:CompareandSwap,翻译成比较并交换。 java.util.concurrent包中借助CAS实现了区别于synchronouse同步锁的一种乐观锁。 CAS有3个操作数,内存值V,旧的预期值A,要修改的新值B。当且仅当预期值A和内存值V相同时,将内存值V修改为B,否则什么都不做。有啥用处?    对于常用

    2022年10月16日
    4
  • URLEncoder转码问题

    URLEncoder转码问题2019独角兽企业重金招聘Python工程师标准>>>…

    2022年6月18日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号