用python求绝对值1.条件判断
2.内置函数abs()
3.内置模块 math.fabs
abs() 与fabs()的区别
abs()是一个内置函数,而fabs()在math模块中定义的 。
fabs()函数只适用于float和integer类型,而abs()也适用于复数 。
abs()返回是float和int类型,math.fabs()返回是float类型
Python--math库Python math 库提供许多对浮点数的数学运算函数 , math模块不支持复数运算,若需计算复数 , 可使用cmath模块(本文不赘述) 。
使用dir函数,查看math库中包含的所有内容:
1) math.pi# 圆周率π
2) math.e#自然对数底数
3) math.inf#正无穷大∞,-math.inf#负无穷大-∞
4) math.nan#非浮点数标记,NaN(not a number)
1) math.fabs(x)#表示X值的绝对值
2) math.fmod(x,y)#表示x/y的余数,结果为浮点数
3) math.fsum([x,y,z])#对括号内每个元素求和,其值为浮点数
4) math.ceil(x)#向上取整,返回不小于x的最小整数
5)math.floor(x)#向下取整,返回不大于x的最大整数
6) math.factorial(x)#表示X的阶乘,其中X值必须为整型,否则报错
7) math.gcd(a,b)#表示a,b的最大公约数
8)math.frexp(x)#x = i *2^j,返回(i,j)
9) math.ldexp(x,i)#返回x*2^i的运算值,为math.frexp(x)函数的反运算
10) math.modf(x)#表示x的小数和整数部分
11) math.trunc(x)#表示x值的整数部分
12) math.copysign(x,y)#表示用数值y的正负号,替换x值的正负号
13) math.isclose(a,b,rel_tol =x,abs_tol = y)#表示a,b的相似性 , 真值返回True,否则False;rel_tol是相对公差:表示a,b之间允许的最大差值 , abs_tol是最小绝对公差,对比较接近于0有用,abs_tol必须至少为0 。
14) math.isfinite(x)#表示当x不为无穷大时,返回True , 否则返回False
15) math.isinf(x)#当x为±∞时,返回True,否则返回False
16) math.isnan(x)#当x是NaN,返回True,否则返回False
1) math.pow(x,y)#表示x的y次幂
2) math.exp(x)#表示e的x次幂
3) math.expm1(x)#表示e的x次幂减1
4) math.sqrt(x)#表示x的平方根
5) math.log(x,base)#表示x的对数值,仅输入x值时,表示ln(x)函数
6) math.log1p(x)#表示1 x的自然对数值
7) math.log2(x)#表示以2为底的x对数值
8) math.log10(x)#表示以10为底的x的对数值
1) math.degrees(x)#表示弧度值转角度值
2) math.radians(x)#表示角度值转弧度值
3) math.hypot(x,y)#表示(x,y)坐标到原点(0,0)的距离
4) math.sin(x)#表示x的正弦函数值
5) math.cos(x)#表示x的余弦函数值
6) math.tan(x)#表示x的正切函数值
7)math.asin(x)#表示x的反正弦函数值
8) math.acos(x)#表示x的反余弦函数值
9) math.atan(x)#表示x的反正切函数值
10) math.atan2(y,x)#表示y/x的反正切函数值
11) math.sinh(x)#表示x的双曲正弦函数值
12) math.cosh(x)#表示x的双曲余弦函数值
13) math.tanh(x)#表示x的双曲正切函数值
14) math.asinh(x)#表示x的反双曲正弦函数值
15) math.acosh(x)#表示x的反双曲余弦函数值
16) math.atanh(x)#表示x的反双曲正切函数值
1)math.erf(x)#高斯误差函数
2) math.erfc(x)#余补高斯误差函数
3) math.gamma(x)#伽马函数(欧拉第二积分函数)
4) math.lgamma(x)#伽马函数的自然对数
python 基础教程 运算
a = 21
b = 10
c = 0
c = ab
print "1 - c 的值为:", c
c = a - b
print "2 - c 的值为:", c
c = a * b
print "3 - c 的值为:", c
c = a / b
print "4 - c 的值为:", c
c = a % b
print "5 - c 的值为:", c
a = 2
b = 3
c = a**b
print "6 - c 的值为:", c
a = 10
b = 5
c = a//b
print "7 - c 的值为:", c
python比较
a = 21
b = 10
c = 0
if ( a == b ):
print "1 - a 等于 b"
else:
print "1 - a 不等于 b"
if ( a != b ):
print "2 - a 不等于 b"
else:
print "2 - a 等于 b"
if ( ab ):
print "3 - a 不等于 b"
else:
print "3 - a 等于 b"
if ( ab ):
print "4 - a 小于 b"
else:
print "4 - a 大于等于 b"
if ( ab ):
print "5 - a 大于 b"
else:
print "5 - a 小于等于 b"
a = 5
b = 20
if ( a = b ):
print "6 - a 小于等于 b"
else:
print "6 - a 大于b"
if ( b = a ):
print "7 - b 大于等于 a"
else:
print "7 - b 小于 a"
赋值
a = 21
b = 10
c = 0
c = ab
print "1 - c 的值为:", c
c= a
print "2 - c 的值为:", c
c *= a
print "3 - c 的值为:", c
c /= a
print "4 - c 的值为:", c
c = 2
c %= a
print "5 - c 的值为:", c
c **= a
print "6 - c 的值为:", c
c //= a
print "7 - c 的值为:", c
逻辑运算符:
a = 10
b = 20
if ( a and b ):
print "1 - 变量 a 和 b 都为 true"
else:
print "1 - 变量 a 和 b 有一个不为 true"
if ( a or b ):
print "2 - 变量 a 和 b 都为 true,或其中一个变量为 true"
else:
print "2 - 变量 a 和 b 都不为 true"
a = 0
if ( a and b ):
print "3 - 变量 a 和 b 都为 true"
else:
print "3 - 变量 a 和 b 有一个不为 true"
if ( a or b ):
print "4 - 变量 a 和 b 都为 true,或其中一个变量为 true"
else:
print "4 - 变量 a 和 b 都不为 true"
if not( a and b ):
print "5 - 变量 a 和 b 都为 false,或其中一个变量为 false"
else:
print "5 - 变量 a 和 b 都为 true"
in,not in
a = 10
b = 20
list = [1, 2, 3, 4, 5 ];
if ( a in list ):
print "1 - 变量 a 在给定的列表中 list 中"
else:
print "1 - 变量 a 不在给定的列表中 list 中"
if ( b not in list ):
print "2 - 变量 b 不在给定的列表中 list 中"
else:
print "2 - 变量 b 在给定的列表中 list 中"
a = 2
if ( a in list ):
print "3 - 变量 a 在给定的列表中 list 中"
else:
print "3 - 变量 a 不在给定的列表中 list 中"
条件
flag = False
name = 'luren'
if name == 'python':# 判断变量否为'python'
flag = True# 条件成立时设置标志为真
print 'welcome boss'# 并输出欢迎信息
else:
print name
num = 5
if num == 3:# 判断num的值
print 'boss'
elif num == 2:
print 'user'
elif num == 1:
print 'worker'
elif num0:# 值小于零时输出
print 'error'
else:
print 'roadman'# 条件均不成立时输出
循环语句:
count = 0
while (count9):
print 'The count is:', count
count = count1
print "Good bye!"
i = 1
while i10:
i= 1
if i :# 非双数时跳过输出
continue
print i# 输出双数2、4、6、8、10
i = 1
while 1:# 循环条件为1必定成立
print i# 输出1~10
i= 1
if i10:# 当i大于10时跳出循环
break
for letter in 'Python':# 第一个实例
print '当前字母 :', letter
fruits = ['banana', 'apple','mango']
for fruit in fruits:# 第二个实例
print '当前水果 :', fruit
print "Good bye!"
获取用户输入:raw_input
var = 1
while var == 1 :# 该条件永远为true,循环将无限执行下去
num = raw_input("Enter a number:")
print "You entered: ", num
print "Good bye!"
range,len
fruits = ['banana', 'apple','mango']
for index in range(len(fruits)):
print '当前水果 :', fruits[index]
print "Good bye!"
python数学函数:
abs,cell,cmp,exp,fabs,floor,log,log10,max,min,mod,pow,round,sqrt
randrange
访问字符串的值
var1 = 'Hello World!'
var2 = "Python Runoob"
print "var1[0]: ", var1[0]
print "var2[1:5]: ", var2[1:5]
转义字符
格式化输出
print "My name is %s and weight is %d kg!" % ('Zara', 21)
字符串函数:
添加元素
list = []## 空列表
list.append('Google')## 使用 append() 添加元素
list.append('Runoob')
print list
删除元素
list1 = ['physics', 'chemistry', 1997, 2000]
print list1
del list1[2]
print "After deleting value at index 2 : "
print list1
列表操作
列表方法
删除字典
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
del dict['Name']; # 删除键是'Name'的条目
dict.clear();# 清空词典所有条目
del dict ;# 删除词典
print "dict['Age']: ", dict['Age'];
print "dict['School']: ", dict['School'];
字典的函数:
当前时间戳:
import time
time.time()
格式化日期输出
import time
print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())
a = "Sat Mar 28 22:24:24 2016"
print time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))
获取某个月日历:calendar
import calendar
cal = calendar.month(2016, 1)
print "以下输出2016年1月份的日历:"
print cal
当前日期和时间
import datetime
i = datetime.datetime.now()
print ("当前的日期和时间是 %s" % i)
print ("ISO格式的日期和时间是 %s" % i.isoformat() )
print ("当前的年份是 %s" %i.year)
print ("当前的月份是 %s" %i.month)
print ("当前的日期是%s" %i.day)
print ("dd/mm/yyyy 格式是%s/%s/%s" % (i.day, i.month, i.year) )
print ("当前小时是 %s" %i.hour)
print ("当前分钟是 %s" %i.minute)
print ("当前秒是%s" %i.second)
不定长参数:*
lambda:匿名函数
def....
python模块搜索路径
获取用户输入
str = raw_input("请输入:")
print "你输入的内容是: ", str
input可以接收表达式
open参数
write要自己添加换行符
读取10个字符
重命名:os.rename
os.remove
os.mkdiros.chdir
os.getcwd
os.rmdir
open参数
file的方法
异常:
try:
fh = open("testfile", "w")
fh.write("这是一个测试文件,用于测试异常!!")
except IOError:
print "Error: 没有找到文件或读取文件失败"
else:
print "内容写入文件成功"
fh.close()
try:
fh = open("testfile", "w")
fh.write("这是一个测试文件 , 用于测试异常!!")
finally:
print "Error: 没有找到文件或读取文件失败"
用户自定义异常:
os模块提供了非常丰富的方法用来处理文件和目录 。常用的方法如下表所示:
| 序号 | 方法及描述 |
| 1 |
os.access(path, mode)
检验权限模式 |
| 2 |
os.chdir(path)
改变当前工作目录 |
| 3 |
os.chflags(path, flags)
设置路径的标记为数字标记 。|
| 4 |
os.chmod(path, mode)
更改权限 |
| 5 |
os.chown(path, uid, gid)
更改文件所有者 |
| 6 |
os.chroot(path)
改变当前进程的根目录 |
| 7 |
os.close(fd)
关闭文件描述符 fd |
| 8 |
os.closerange(fd_low, fd_high)
关闭所有文件描述符,从 fd_low (包含) 到 fd_high (不包含), 错误会忽略 |
| 9 |
os.dup(fd)
复制文件描述符 fd |
| 10 |
os.dup2(fd, fd2)
将一个文件描述符 fd 复制到另一个 fd2 |
| 11 |
os.fchdir(fd)
通过文件描述符改变当前工作目录 |
| 12 |
os.fchmod(fd, mode)
改变一个文件的访问权限,该文件由参数fd指定 , 参数mode是Unix下的文件访问权限 。|
| 13 |
os.fchown(fd, uid, gid)
修改一个文件的所有权,这个函数修改一个文件的用户ID和用户组ID,该文件由文件描述符fd指定 。|
| 14 |
os.fdatasync(fd)
强制将文件写入磁盘 , 该文件由文件描述符fd指定,但是不强制更新文件的状态信息 。|
| 15 |
os.fdopen(fd[, mode[, bufsize]])
通过文件描述符 fd 创建一个文件对象,并返回这个文件对象 |
| 16 |
os.fpathconf(fd, name)
返回一个打开的文件的系统配置信息 。name为检索的系统配置的值 , 它也许是一个定义系统值的字符串,这些名字在很多标准中指定(POSIX.1, Unix 95, Unix 98, 和其它) 。|
| 17 |
os.fstat(fd)
返回文件描述符fd的状态,像stat() 。|
| 18 |
os.fstatvfs(fd)
返回包含文件描述符fd的文件的文件系统的信息,像 statvfs() |
| 19 |
os.fsync(fd)
强制将文件描述符为fd的文件写入硬盘 。|
| 20 |
os.ftruncate(fd, length)
裁剪文件描述符fd对应的文件, 所以它最大不能超过文件大小 。|
| 21 |
os.getcwd()
返回当前工作目录 |
| 22 |
os.getcwdu()
返回一个当前工作目录的Unicode对象 |
| 23 |
os.isatty(fd)
如果文件描述符fd是打开的,同时与tty(-like)设备相连,则返回true, 否则False 。|
| 24 |
os.lchflags(path, flags)
设置路径的标记为数字标记,类似 chflags(),但是没有软链接 |
| 25 |
os.lchmod(path, mode)
修改连接文件权限 |
| 26 |
os.lchown(path, uid, gid)
更改文件所有者 , 类似 chown,但是不追踪链接 。|
| 27 |
os.link(src, dst)
创建硬链接,名为参数 dst,指向参数 src |
| 28 |
os.listdir(path)
返回path指定的文件夹包含的文件或文件夹的名字的列表 。|
| 29 |
os.lseek(fd, pos, how)
设置文件描述符 fd当前位置为pos, how方式修改: SEEK_SET 或者 0 设置从文件开始的计算的pos; SEEK_CUR或者 1 则从当前位置计算; os.SEEK_END或者2则从文件尾部开始. 在unix,Windows中有效 |
| 30 |
os.lstat(path)
像stat(),但是没有软链接 |
| 31 |
os.major(device)
从原始的设备号中提取设备major号码 (使用stat中的st_dev或者st_rdev field) 。|
| 32 |
os.makedev(major, minor)
以major和minor设备号组成一个原始设备号 |
| 33 |
os.makedirs(path[, mode])
递归文件夹创建函数 。像mkdir(), 但创建的所有intermediate-level文件夹需要包含子文件夹 。|
| 34 |
os.minor(device)
从原始的设备号中提取设备minor号码 (使用stat中的st_dev或者st_rdev field ) 。|
| 35 |
os.mkdir(path[, mode])
以数字mode的mode创建一个名为path的文件夹.默认的 mode 是 0777 (八进制) 。|
| 36 |
os.mkfifo(path[, mode])
创建命名管道,mode 为数字,默认为 0666 (八进制) |
| 37 |
os.mknod(filename[, mode=0600, device])
创建一个名为filename文件系统节点(文件,设备特别文件或者命名pipe) 。
|
| 38 |
os.open(file, flags[, mode])
打开一个文件,并且设置需要的打开选项,mode参数是可选的 |
| 39 |
os.openpty()
打开一个新的伪终端对 。返回 pty 和 tty的文件描述符 。|
| 40 |
os.pathconf(path, name)
返回相关文件的系统配置信息 。|
| 41 |
os.pipe()
创建一个管道. 返回一对文件描述符(r, w) 分别为读和写 |
| 42 |
os.popen(command[, mode[, bufsize]])
从一个 command 打开一个管道 |
| 43 |
os.read(fd, n)
从文件描述符 fd 中读取最多 n 个字节,返回包含读取字节的字符串,文件描述符 fd对应文件已达到结尾, 返回一个空字符串 。|
| 44 |
os.readlink(path)
返回软链接所指向的文件 |
| 45 |
os.remove(path)
删除路径为path的文件 。如果path 是一个文件夹,将抛出OSError; 查看下面的rmdir()删除一个 directory 。|
| 46 |
os.removedirs(path)
递归删除目录 。|
| 47 |
os.rename(src, dst)
重命名文件或目录,从 src 到 dst |
| 48 |
os.renames(old, new)
递归地对目录进行更名 , 也可以对文件进行更名 。|
| 49 |
os.rmdir(path)
删除path指定的空目录,如果目录非空,则抛出一个OSError异常 。|
| 50 |
os.stat(path)
获取path指定的路径的信息,功能等同于C API中的stat()系统调用 。|
| 51 |
os.stat_float_times([newvalue])
决定stat_result是否以float对象显示时间戳
|
| 52 |
os.statvfs(path)
获取指定路径的文件系统统计信息 |
| 53 |
os.symlink(src, dst)
创建一个软链接 |
| 54 |
os.tcgetpgrp(fd)
返回与终端fd(一个由os.open()返回的打开的文件描述符)关联的进程组 |
| 55 |
os.tcsetpgrp(fd, pg)
设置与终端fd(一个由os.open()返回的打开的文件描述符)关联的进程组为pg 。|
| 56 |
os.tempnam([dir[, prefix]])
返回唯一的路径名用于创建临时文件 。|
| 57 |
os.tmpfile()
返回一个打开的模式为(w b)的文件对象 .这文件对象没有文件夹入口,没有文件描述符,将会自动删除 。|
| 58 |
os.tmpnam()
为创建一个临时文件返回一个唯一的路径 |
| 59 |
os.ttyname(fd)
返回一个字符串,它表示与文件描述符fd 关联的终端设备 。如果fd 没有与终端设备关联,则引发一个异常 。|
| 60 |
os.unlink(path)
删除文件路径 |
| 61 |
os.utime(path, times)
返回指定的path文件的访问和修改的时间 。|
| 62 |
os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])
输出在文件夹中的文件名通过在树中游走,向上或者向下 。|
| 63 |
os.write(fd, str)
写入字符串到文件描述符 fd中. 返回实际写入的字符串长度 |
python之数学相关模块 先来看一下 math 模块中包含内容,如下所示:
接下来具体看一下该模块的常用函数和常量 。
ceil(x)
返回 x 的上限,即大于或者等于 x 的最小整数 。看下示例:
floor(x)
返回 x 的向下取整 , 小于或等于 x 的最大整数 。看下示例:
fabs(x)
返回 x 的绝对值 。看下示例:
fmod(x, y)
返回 x/y 的余数,值为浮点数 。看下示例:
factorial(x)
返回 x 的阶乘,如果 x 不是整数或为负数时则将引发 ValueError 。看下示例:
pow(x, y)
返回 x 的 y 次幂 。看下示例:
fsum(iterable)
返回迭代器中所有元素的和 。看下示例:
gcd(x, y)
返回整数 x 和 y 的最大公约数 。看下示例:
sqrt(x)
返回 x 的平方根 。看下示例:
trunc(x)
返回 x 的整数部分 。看下示例:
exp(x)
返回 e 的 x 次幂 。看下示例:
log(x[, base])
返回 x 的对数,底数默认为 e 。看下示例:
常量
tan(x)
返回 x 弧度的正切值 。看下示例:
atan(x)
返回 x 的反正切值 。看下示例:
sin(x)
返回 x 弧度的正弦值 。看下示例:
asin(x)
返回 x 的反正弦值 。看下示例:
cos(x)
返回 x 弧度的余弦值 。看下示例:
acos(x)
返回 x 的反余弦值 。看下示例:
decimal 模块为正确舍入十进制浮点运算提供了支持,相比内置的浮点类型 float , 它能更加精确的控制精度,能够为精度要求较高的金融等领域提供支持 。
decimal 在一个独立的 context 下工作 , 可以使用 getcontext() 查看当前上下文,如下所示:
从上面的结果中我们可以看到 prec=28,这就是默认的精度,我们可以使用 getcontext().prec = xxx 来重新设置精度 。接下来通过具体示例看一下 。
基本运算
执行结果:
上面结果是用了默认精度,我们重新设置下精度再来看一下:
执行结果:
random 模块可以生成随机数 , 我们来看一下其常用函数 。
random()
返回 [0.0, 1.0) 范围内的一个随机浮点数 。看下示例:
uniform(a, b)
返回 [a, b) 范围内的一个随机浮点数 。看下示例:
randint(a, b)
返回 [a, b] 范围内的一个随机整数 。看下示例:
randrange(start, stop[, step])
返回 [start, stop) 范围内步长为 step 的一个随机整数 。看下示例:
choice(seq)
从非空序列 seq 返回一个随机元素 。看下示例:
shuffle(x[, random])
将序列 x 随机打乱位置 。看下示例:
sample(population, k)
返回从总体序列或集合中选择的唯一元素的 k 长度列表,用于无重复的随机抽样 。看下示例:
参考:
【fabs函数python fabs函数在c语言中怎么用】关于fabs函数python和fabs函数在c语言中怎么用的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。
推荐阅读
- 推荐赛车游戏极品飞车20,极品飞车20介绍
- 固态硬盘128怎么分区,固态硬盘分区怎么4k对齐
- 路由器初始化后怎么设置,路由器按了复位键后怎么设置
- java右下角弹窗代码,java弹出窗口代码
- postgresqlcpu100的简单介绍
- 关于pythonlinux系统的信息
- hlenredis时间复杂,redis 当前时间
- php拿到缓冲区的数据 php常用的缓存技术汇总php技术之缓存机制的好处
- linuxnm命令v的简单介绍