我死了,今天看课看过头了,忘了发作业,被典明批评

而且化学作业还是瞎搞的,直接就发了

我觉得我已经提前死亡了,现在不死亡,开学也会的

函数

挺容易的,有很多语言之间重合的部分

注意

在使用某些数学函数以前,要使用这一语句

import math

使用随机数前,得调用另一个

import random

\(import\)的作用是调用一个库

例如之前的

import keyword

和\(C++\)里的

#include<bits/stdc++.h>

类似

而且在使用库中的函数时,需要加“库的名称.”

例如开方函数需要写成

math.sqrt()

不加\(math.\)会报错

库:

封装一些功能

同一库里的函数功能相似

绝对值函数

\(abs\)函数,搞竞赛的时候不是很常用(其实是我太菜了

print( abs( -19260817 ) ) #顺带一提,19260817是一个质数

这个函数不在\(math\)库中,它是内建函数

大于小于

真则返回1,假则返回0

不用调用\(math\)库

\(max,min\)函数

\(max\)字面意思,返回给定参数较大值

但是和\(C++\)不一样的是,可以同时比较多个

a1 = 1
a2 = 2
a3 = 3
a4 = 4444 #我又来迫害米4达了
print( max( a1, a2, a3, a4 ) )

返回值是4444

\(min\)同理

不用调用\(math\)

乘方

要计算\(2^5\)

print( pow( 2, 5 ) )

这个有意思了,pow函数有两个

第一个可以直接使用,整数运算

print( pow( 2, 5 ) )

第二个不能直接用,要调用\(math\)库

会保留小数位

print( math.pow( 2, 5 ) )

四舍五入函数

可以规定位数,只要加一个参数就行,但是默认不加的话,就是保留整数位

print( round( 3.14159 ) ) # 输出3
print( round( 3.14159, 2 ) ) # 输出3.14

注意这个函数不在\(math\)库中

元组函数

啥是元组呢,就是整数部分加浮点数部分的形式

print( math.modf( 22.7 ) )

返回的整数部分与浮点数部分都是浮点数

虽然会有鬼畜的精度错误……

开方函数

上面写过了

print( math.sqrt( 16 ) )

返回的依然是浮点数

随机数函数

随机数函数有很多

使用前务必调用\(random\)库

\(choice\)函数

从序列的元素里随机挑选一个

也可以挑字符串,混搭也可以

print( random.choice( [ 1, 3, 5, 7, 9, "屁桃" ] ) )
print( random.choice( range( 5 ) ) ) #range(5) == [ 0, 1, 2, 3, 4 ]

但是需要注意的是,如果写成下面这样,便不会再把这个字符串看成一个元素,而是每个字母都看成一个元素

print( random.choice( "aCutePig" ) )

\(randrange\)函数

从指定范围内,按基数递增选数目

print( random.randrange( 1, 100, 5 ) )

从\(1\)到\(99\)中,选取\(1 + 5n\)的数,例如\(6,11,16,21\)

print( random.randrange( 1, 100, 2 ) )

选取\(1,3,5,7\)等等

开始的范围和基数可以不写,开始默认是0,基数默认是1

\(random\)函数

随机生成一个小于\(1\)大于等于\(0\)的浮点数

print( random.random() )

\(shuffle\)函数

打乱(简明易懂

list = [ 1, 2, 3, 4, 5 ] #生成一个列表
random.shuffle( list ) #打乱列表元素顺序

\(uniform\)函数

生成一个闭区间内的任意实数(浮点数或整数

当然,和无穷无尽的浮点数比起来,整数的个数显得太过可怜

我在\(1\)到\(100\)间生成了\(100\)个数都没有一个整数(不排除人品问题

print( random.uniform( 1, 100 ) )

【Python】2.13学习笔记 数学函数和随机函数的更多相关文章

  1. Python Built-in Function 学习笔记

    Python Built-in Function 学习笔记 1. 匿名函数 1.1 什么是匿名函数 python允许使用lambda来创建一个匿名函数,匿名是因为他不需要以标准的方式来声明,比如def ...

  2. python网络爬虫学习笔记

    python网络爬虫学习笔记 By 钟桓 9月 4 2014 更新日期:9月 4 2014 文章文件夹 1. 介绍: 2. 从简单语句中開始: 3. 传送数据给server 4. HTTP头-描写叙述 ...

  3. Matlab学习笔记 figure函数

    Matlab学习笔记 figure函数 matlab中的 figure 命令,能够创建一个用来显示图形输出的一个窗口对象.每一个这样的窗口都有一些属性,例如窗口的尺寸.位置,等等.下面一一介绍它们. ...

  4. matlab学习笔记 bsxfun函数

    matlab学习笔记 bsxfun函数 最近总是遇到 bsxfun这个函数,前几次因为无关紧要只是大概看了一下函数体去对比结果,今天再一次遇见了这个函数,想想还是有必要掌握的,遂查了些资料总结如下. ...

  5. Requests:Python HTTP Module学习笔记(一)(转)

    Requests:Python HTTP Module学习笔记(一) 在学习用python写爬虫的时候用到了Requests这个Http网络库,这个库简单好用并且功能强大,完全可以代替python的标 ...

  6. Python学习笔记之函数

    这篇文章介绍有关 Python 函数中一些常被大家忽略的知识点,帮助大家更全面的掌握 Python 中函数的使用技巧 1.函数文档 给函数添加注释,可以在 def 语句后面添加独立字符串,这样的注释被 ...

  7. Python学习笔记_week3_函数

    一.介绍 1.面向对象(华山派)--->类(独门秘籍)--->class(定义的关键字) 2.面向过程(少林派)--->过程--->def 3.函数式编程(逍遥派)---> ...

  8. Python 2.7 学习笔记 内置语句、函数、标准库

    使用任何开发语言进行软件开发,都离不开语言提供的内置库(或Api),甚至说内置库的强大及使用是否方便都会影响大家对开发语言的选择. python语言,一样提供了很多内置的功能,可供开发时使用.主要有如 ...

  9. Python学习笔记:函数和变量详解

    一.面向对象:将客观世界的事物抽象成计算机中的数据结构 类:用class定义,这是当前编程的重点范式,以后会单独介绍. 二.函数编程:逻辑结构化和过程化的一种编程方法 1.函数-->用def定义 ...

随机推荐

  1. 史上最全Java面试题全集

    2013年年底的时候,我看到了网上流传的一个叫做<Java面试题大全>的东西,认真的阅读了以后发现里面的很多题目是重复且没有价值的题目,还有不少的参考答案也是错误的,于是我花了半个月时间对 ...

  2. SpringMVC学习笔记三:Controller的返回值

    springMVC的返回值有ModelAndView,String,void,Object类型 项目目录树: 该项目是在前面项目的基础上修改的,这里的pom.xml文件需要加入使用到的包,应为@Res ...

  3. [USACO5.1] Musical Themes

    后缀数组求最长重复且不重叠子串. poj 1743 传送门 洛谷 P2743 传送门 1.子串可以“变调”(即1 3 6和3 5 8视作相同).解决办法:求字符串相邻元素的差形成新串.用新字符串求解最 ...

  4. 关于JavaScript中bind、applay、call的区别

    在JavaScript中this的指向一直是一个困扰我们的问题,在JavaScript中this的指向是不固定的,但是我们可以通过使用bind().call().apply()来改变this的指向,但 ...

  5. mybatis的通用mapper小结

    import tk.mybatis.mapper.entity.Example; //此包是tk下的1.定义一个dao层接口不需要任何方法 需要继承Mapper<类型> 2.在servic ...

  6. <BZOJ3032>七夕祭

    水 #include<cstdio> #include<cstring> #include<iostream> #include<algorithm> ...

  7. Python---11模块

    在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很 ...

  8. Rails (栈)

    题目链接:https://vjudge.net/problem/UVA-514 题目大意: 有A,B,C三个火车停靠点,火车最初停在A站,给你一个序列,问你能不能通过中转站C到达B站,火车从A站进入到 ...

  9. 关于配置cordova的一些细节

    网上多数资料都是:安装nodejs->通过node js安装cordova->JDK->设置环境变量JAVA_HOME->安装android SDK->设置环境变量AND ...

  10. EventBus 及一些思考

    EventBus 是 Android 开发的一种常用框架,其解耦的思维令人赞叹 从特性上来讲,其与 Android SDK中的BroadcastReceiver很像,二者都是注册,发送事件,反注册,都 ...