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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 约瑟夫环——公式法(递推公式)

    约瑟夫环——公式法(递推公式)约瑟夫问题约瑟夫问题是个有名的问题:N个人围成一圈,第一个从1开始报数,报M的将被杀掉,下一个人接着从1开始报。如此反复,最后剩下一个,求最后的胜利者。例如只有三个个人,把他们叫做A、B、C围成一圈,从A开始报数,报2的人被杀掉。A开始报数,他报1。侥幸逃过一劫。然后轮到B报数,他报2。非常惨,他被杀了C接着从1开始报数然后轮到A报数,他报2。也被杀死了。最终胜利者是C解决方案普通解

    2022年5月4日
    47
  • pycharm全局搜索代码_linux全局搜索字符串

    pycharm全局搜索代码_linux全局搜索字符串参考链接实测好用!我改为Ctrl+Shift+G也有冲突,把G随便换成其它无冲突的字母就可用了!

    2022年8月26日
    3
  • rpm包的卸载与安装[通俗易懂]

    rpm包的卸载与安装[通俗易懂]1.rpm包的管理介绍:一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中,它生成具有RPM扩展名的文件,RPM是RedHatPackageManager(RedHat软件包管理工具)的缩写,类似windows的setup.exe,这一文件格式名称虽然打上了RedHat的标志,但理念是通用的Linux的分发版本都有采用(suse,redhat,centos等等),…

    2022年4月19日
    74
  • 阿里巴巴Java开发手册(终极版)[通俗易懂]

    不知不觉间,2020年已经过了一大半了,作为技术圈中你,准备好迎接最新的变化了吗?在本文中,我们将以编程界最常用的编程语言Java为例,分享最为主流的技术与工具。2020年最流行的Java开发技术Java几乎无处不在,无论在智能手机、台式机、游戏设备还是科学超级计算机上,处处都有Java的影子。全世界有数百万的Java程序员在开发基于Java的产品。然而,如此激烈的竞争,意味着Java开发人员必须时刻保持领先地位。为此,他们必须随时了解和洞悉Java生态系统中的最新动..

    2022年4月18日
    53
  • MAC电脑用adb命令安装APK

    MAC电脑用adb命令安装APK目录开始过程结果开始分别在命令行里面输入以下命令:touch.bash_profileopen-e.bash_profilesource.bash_profileadbversion过程这个时候会弹出一个这种框需要你配置路径比如我的路径是这个命令:exportPATH=${PATH}:–…

    2022年6月1日
    88
  • android如何获取证书签名?

    android如何获取证书签名?cygwin环境下在cygwin环境下运行如下命令,输出结果即为signaturekeytool-exportcert-alias[alias]-keypass[aliaspassword]-keystore[keystorefilepath]-storepass[keystorepassword]|md5sum 例如:当前路径下包含用于对app签名的t

    2022年5月31日
    111

发表回复

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

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