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类加载,getClassLoader()

    Java类加载,getClassLoader()转自【java类加载的深入研究1】loadClass()的研究,IBM深入探讨Java类加载器类加载器基本概念顾名思义,类加载器(classloader)用来加载Java类到Java虚拟机中。一般来说,Java虚拟机使用Java类的方式如下:Java源程序(.java文件)在经过Java编译器编译之后就被转换成Java字节代码(.class文件)。类加载…

    2022年5月27日
    31
  • 区块链入门——比特币科普

    区块链入门——比特币科普

    2022年3月12日
    84
  • 微信公众号发布提醒(微信公众号模板消息接口)

    1.项目简介灵感来源于学校的每日健康日报,要求使用微信小程序进行每日健康打卡。所以此项目的功能类似于QQ群机器人,或者是每日闹钟。功能描述:用户访问给定的页面,进行授权登录,然后确认自己的身份(本科生或研究生),并开启通知,即可每天在约定时间收到微信服务号的消息提醒。当然,用户可以自定义每日通知的时间,也可以随时开启或关闭每日通知。

    2022年4月12日
    422
  • 手机端禁止默认长按复制功能[通俗易懂]

    手机端禁止默认长按复制功能[通俗易懂]若要将全部的文字都取消长按复制,只需在css样式中加入如下代码:*{-webkit-touch-callout:none;/*系统默认菜单被禁用*/-webkit-user-select:none;/*webkit浏览器*/-khtml-user-select:none;/*早期浏览器*/-moz-user-select:none;/*火狐*/-ms-use

    2022年9月28日
    4
  • 虚拟机Centos 7 使用命令 ip addr 不显示IP地址[通俗易懂]

    虚拟机Centos 7 使用命令 ip addr 不显示IP地址[通俗易懂]ipaddr不显示地址(如果是在虚拟机运行的,首先考虑VMWareNaTService和VMWareDHCPService)记住这个ens33这个就是一会修改的文件后缀(不同主机的文件可能会不一样) 这个文件在ect/sysconfig/network-scripts目录 在文件路径下找到ifcfg-ens33文件然后进行修改  只需要把ONBOOT=no改为ONBO…

    2022年7月27日
    16
  • 开发一款Android App,从零开始详细讲解[通俗易懂]

    开发一款Android App,从零开始详细讲解[通俗易懂]入门篇:第一篇:开发环境篇第二篇:材料设计篇第三篇:规范开发篇第四篇:从项目开发到上架篇(篇章调整,最后更新)进阶篇:第五篇:设计模式篇第六篇:网络请求篇(上)    网络请求篇(下)第七篇:图片处理篇第八篇:数据库篇第九篇:开源资源篇高阶篇:第十篇:自定义控件篇第十一篇:跨进程篇关于Demo写这个系列的文章的同时,也在做一个小Demo。功能很简单,利用豆瓣电影Api实现一款基于Android的电影集合的App。starmeonGitHub! 该项目的数据源来自于豆瓣;

    2022年5月4日
    49

发表回复

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

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