python常用基础函数

1、round()

返回浮点数 x 的四舍五入值,准确的说保留值将保留到离上一位更近的一端(四舍六入)。

精度要求高的,不建议使用该函数。

语法:

  round(x,n)

    x -- 数字表达式,必填

    n -- 表示从小数点位数,其中 x 需要四舍五入,默认值为 0,非必填

返回值:

  返回浮点数x的四舍五入值。

实例:

#!/usr/bin/python3

print ("round(70.23456) : ", round(70.23456))
print ("round(56.659,1) : ", round(56.659,1))
print ("round(80.264, 2) : ", round(80.264, 2))
print ("round(100.000056, 3) : ", round(100.000056, 3))
print ("round(-100.000056, 3) : ", round(-100.000056, 3))
 

运行结果

round(70.23456) : 70

round(56.659,1) : 56.7

round(80.264, 2) : 80.26

round(100.000056, 3) : 100.0

round(-100.000056, 3) : -100.0

注意:不是所有数据都四舍五入,如果距离两边一样远,会保留到偶数的一边。比如round(0.5)和round(-0.5)都会保留到0,而round(1.5)会保留到2。

round(2.675, 2) 的结果,不论我们从python2还是3来看,结果都应该是2.68的,结果它偏偏是2.67,为什么?这跟浮点数的精度有关。我们知道在机器中浮点数不一定能精确表达,因为换算成一串1和0后可能是无限位数的,机器已经做出了截断处理。那么在机器中保存的2.675这个数字就比实际数字要小那么一点点。这一点点就导致了它离2.67要更近一点点,所以保留两位小数时就近似到了2.67。

 

 

2、divmod()

Python divmod() 函数接收两个数字类型(非复数)参数,返回一个包含商和余数的元组(a // b, a % b)。

在 python 3.x 版本该函数不支持复数。

语法:

  divmod(a,b)

    a -- 数字,非复数

    b -- 数字,非复数

返回值: 

  如果参数 a 与 参数 b 都是整数,函数返回的结果相当于 (a // b, a % b)。
  如果其中一个参数为浮点数时,函数返回的结果相当于 (q, a % b),q 通常是 math.floor(a / b),但也有可能是 1 ,比小,不过 q * b + a % b 的值会非常接近 a。
  如果 a % b 的求余结果不为 0 ,则余数的正负符号跟参数 b 是一样的,若 b 是正数,余数为正数,若 b 为负数,余数也为负数,并且 0 <= abs(a % b) < abs(b)。

实例:

  >>> divmod(7, 2)

  (3, 1)

  >>> divmod(8, 2)

  (4, 0)

  >>> divmod(8, -2)

  (-4, 0)

  >>> divmod(3, 1.3)

  (2.0, 0.3999999999999999)

3、pow()

pow() 方法返回 xy(x的y次方) 的值。

语法:

  以下是 math 模块 pow() 方法的语法:

import math

math.pow( x, y )

  内置的 pow() 方法

pow(x, y[, z])
x -- 数值表达式
y -- 数值表达式
z -- 数值表达式

  函数是计算x的y次方,如果z在存在,则再对结果进行取模,其结果等效于pow(x,y) %z

  注意:pow() 通过内置的方法直接调用,内置方法会把参数作为整型,而 math 模块则会把参数转换为 float。

返回值:

  返回 xy(x的y次方) 的值。

实例:

#!/usr/bin/python3
import math   # 导入 math 模块

print ("math.pow(100, 2) : ", math.pow(100, 2))
# 使用内置,查看输出结果区别
print ("pow(100, 2) : ", pow(100, 2))
print ("math.pow(100, -2) : ", math.pow(100, -2))
print ("math.pow(2, 4) : ", math.pow(2, 4))
print ("math.pow(3, 0) : ", math.pow(3, 0))

以上实例运行后输出结果为:

math.pow(100, 2) :  10000.0
pow(100, 2) :  10000
math.pow(100, -2) :  0.0001
math.pow(2, 4) :  16.0
math.pow(3, 0) :  1.0

4、complex()

描述:
  complex( ) 函数用于创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数。
  如果第一个参数为字符串,则不需要指定第二个参数。

语法:
  class complex([real[, imag]])
参数说明:
  real —— int、long、float 或字符串。
  imag —— int、long、float。

返回值:
  返回一个复数。
示例:
>>> complex(1, 2)
(1+2j)

>>> complex(1) # 数字
(1+0j)

>>> complex("1") # 当做字符串处理
(1+0j)

# 注意:下边例子在"+"号两边不能有空格,也就是不能写成"1 + 2j",应该是"1+2j",否则会报错
>>> complex("1+2j")
(1+2j)

5、hex()

描述

hex() 函数用于将一个指定数字转换为 16 进制数。

语法

hex 语法:

hex(x)

参数说明:

  • x -- 一个整数

返回值

返回一个字符串,以 0x 开头。

实例

以下实例展示了 hex 的使用方法:

>>>hex(255) '0xff' >>> hex(-42) '-0x2a' >>> hex(12) '0xc' >>> type(hex(12)) <class 'str'# 字符串

 




posted @ 2021-09-13 22:07  coco9821  阅读(402)  评论(0编辑  收藏  举报