Python Number(数字)

版权声明:本文为博主原创文章,转载请注明原文链接。 https://blog.csdn.net/Frank_Abagnale/article/details/78815609

1.Python Number 数字的分类
<1>整型(int) - 通常被称为是整型或整数,是正或负整数,不带小数点。
<2>长整型(long) - 无限大小的整数,整数最后是一个大写或小写的L。
<3>浮点型(floating) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 10^2 = 250)
<4>复数(complex) - 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

2.强制类型转换

int(x [,base ])x转换为一个整数  
long(x [,base ])x转换为一个长整数  
float(x )x转换到一个浮点数  
complex(real [,imag ])  创建一个复数  
str(x )                 将对象 x 转换为字符串  
repr(x )                将对象 x 转换为表达式字符串  
eval(str )              用来计算在字符串中的有效Python表达式,并返回一个对象  
tuple(s )               将序列 s 转换为一个元组  
list(s )                将序列 s 转换为一个列表  
chr(x )                 将一个整数转换为一个字符  
unichr(x )              将一个整数转换为Unicode字符  
ord(x )                 将一个字符转换为它的整数值  
hex(x )                 将一个整数转换为一个十六进制字符串  
oct(x )                 将一个整数转换为一个八进制字符串  

3.Python math/cmath模块
Python 中数学运算常用的函数基本都在 math 模块、cmath 模块中。
cmath 模块的函数跟 math 模块函数基本一致,区别是 cmath 模块运算的是复数,math 模块运算的是实数运算。
要使用 math 或 cmath 函数必须先导入:“import math”/“import cmath”

4.example

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# http://www.runoob.com/python/python-numbers.html
import math
from math import *
import random

if __name__ == "__main__" :
  print dir(math)
  '''
  ['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign',
   'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum',
   'gamma', 'hypot', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'modf', 'pi', 'pow', 'radians', 'sin',
    'sinh', 'sqrt', 'tan', 'tanh', 'trunc']
  '''
  # python 数学函数
  # import math
  # from math import *
  # 绝对值函数
  print "绝对值函数(int/float)-->(abs()/fabs())"
  print abs(-10)                            #= 10
  print abs(-10.0123456789)                 #= 10.0123456789
  print fabs(-10.0123456789)                #= 10.0123456789
  print fabs(-10)                           #= 10.0
  # 取整数 上入整数(进一)
  print "上入整数"
  print math.ceil(2.3)                      #= 3.0
  print ceil(-2.9)                          #= -2.0
  # 取整数 的下舍整数
  print "下舍整数"
  print floor(2.9)                          #= 2.0
  print floor(-2.3)                         #= -3.0
  # 比较大小 (比较前一个数是否比后一个大)
  print "比较大小 (比较前一个数是否比后一个大)"
  print cmp(7, 12)                          #= -1
  print cmp(12,12)                          #= 0
  print cmp(22,12)                          #= 1
  # 返回e的x次幂(e^x)
  print "返回e的x次幂(e^x)"
  print exp(2)
  # 求对数
  print "求对数,幂的逆运算"
  print log(1)                               #= 0.0 任何数的0次幂 等于1  // 入参必须大于0
  print log(e)                               #= 1.0 默认底数为e
  print log(100,10)                          #= 2.0 (100为底,10的对数)
  print log10(1000)                          #= 3.0 (10为基数,任何底数的对数)
  print log10(0.001)                         #= -3.0
  # 整数小数分离
  print "整数小数分离"
  print modf(12.213)                         #=(0.2129999999999992, 12.0)
  print modf(-3.14)                          #=(-0.14000000000000012, -3.0)
  print modf(-0.618)                         #=(-0.618, -0.0)
  # float数保留有效位
  print "保留有效位数"
  print round(modf(12.213)[0],3)             #= 0.213 不再是0.2129999999999992
  # 最大最小值
  number_list = [7.0,5.5,1,12.0,12,1.0,5,7,9.9]
  print max(1.2,1.6,1.5,0.9)                 #= 1.6
  print max(1,1.0)                           #= 1
  print max(1.0,1)                           #= 1.0   如相等,取左值
  print max(number_list)                     #= 12.0
  print min(1.2, 1.6, 1.5, 0.9)              #= 0.9
  print min(1, 1.0)                          #= 1
  print min(1.0, 1)                          #= 1.0
  print min(number_list)                     #= 1
  # 求幂运算
  print "求幂运算"
  print pow(5,2)                             #= 5^2 = 25.0 (float)
  # 求平方根
  print "求平方根"
  print sqrt(100)                            #= 10.0
  print sqrt(2)                              #= 1.41421356237

  # python 随机数
  # range 函数
  print range(10)                              #= [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]  [0~10)之间的整数
  print range(-1,10)                           #= [-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]  [-1,10)之间的整数
  print range(2,10,3)                          #= [2, 5, 8]        [2,10)之间间隔为3的整数
  #以下 需要 import random
  # 从序列中随机选数字
  print random.choice(range(10))               #= 0~9中的随机一个
  # 返回指定递增基数集合中的一个随机数,基数缺省值为1
  print "randrange(start, stop, step) : "
  # 输出 100 <= number < 1000 间的偶数
  print "randrange(100, 1000, 2) : ", random.randrange(100, 1000, 2)
  # 输出 0 <= number < 1000 可以被3整除的随机数
  print "randrange(0, 1000, 3) : ", random.randrange(0, 1000, 3)
  # 随机生成一个在[0,1)范围内的实数
  print random.random()
  #  将序列的所有元素随机排序
  sort_list = range(10)
  random.shuffle(sort_list)
  print sort_list
  # 随机生成下一个实数,它在[x,y]范围内。
  print random.uniform(-1,1)
  # 关于三角函数、复数运算的,参考:http://www.runoob.com/python/python-numbers.html

猜你喜欢

转载自blog.csdn.net/Frank_Abagnale/article/details/78815609
今日推荐