python 数字
python数字:
本文主要讲解常用的数字类型转换, 数字函数和随机数字函数。
1 # coding:utf-8 2 3 # python数字类型转换 4 def data_conversion(): 5 """ 6 int(x [,base ]) 将x转换为一个整数 7 long(x [,base ]) 将x转换为一个长整数 8 float(x ) 将x转换到一个浮点数 9 complex(real [,imag ]) 创建一个复数 10 str(x ) 将对象 x 转换为字符串 11 repr(x ) 将对象 x 转换为表达式字符串 12 eval(str ) 用来计算在字符串中的有效Python表达式,并返回一个对象 13 tuple(s ) 将序列 s 转换为一个元组 14 list(s ) 将序列 s 转换为一个列表 15 chr(x ) 将一个整数转换为一个字符 16 unichr(x ) 将一个整数转换为Unicode字符 17 ord(x ) 将一个字符转换为它的整数值 18 hex(x ) 将一个整数转换为一个十六进制字符串 19 oct(x ) 将一个整数转换为一个八进制字符串 20 :return: 21 """ 22 # 字符串转数字 23 print int('89') 24 25 # 表达式转换成表达式字符串 26 print repr(123+234) 27 print type(repr(123+234)) 28 29 # 计算字符串表达式 30 str = "2*3+4" 31 s = eval(str) 32 # eval(reprz(str))== str 33 s1 = eval(repr(str)) 34 print s 35 print s1 36 print type(s1) 37 38 s3 = "abcdefg" 39 print tuple(s3) 40 print list(s3) 41 42 print chr(65) 43 print ord('a') 44 print unichr(65) 45 46 # python数字函数 47 def numeric_function(): 48 """ 49 abs(x) 返回数字的绝对值,如abs(-10) 返回 10 50 ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5 51 cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1 52 exp(x) 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045 53 fabs(x) 返回数字的绝对值,如math.fabs(-10) 返回10.0 54 floor(x) 返回数字的下舍整数,如math.floor(4.9)返回 4 55 log(x) 如math.log(math.e)返回1.0,math.log(100,10)返回2.0 56 log10(x) 返回以10为基数的x的对数,如math.log10(100)返回 2.0 57 max(x1, x2,...) 返回给定参数的最大值,参数可以为序列。 58 min(x1, x2,...) 返回给定参数的最小值,参数可以为序列。 59 modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。 60 pow(x, y) x**y 运算后的值。 61 round(x [,n]) 返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。 62 sqrt(x) 返回数字x的平方根,数字可以为负数,返回类型为实数,如math.sqrt(4)返回 2+0j 63 :return: 64 """ 65 import math 66 print 'abs(%i) = %i' %(-10, abs(-10)) 67 print 'math.fabs(%i) = %f' % (-10, math.fabs(-10)) 68 69 print 'round(3.1415926) = %s' % (round(3.1415926,3)) 70 print 'math.ceil(1.1) = ', (math.ceil(1.1)) 71 print 'math.floor(1.9) = ',math.floor(1.9) 72 print 'math.modf(1.9) = ',math.modf(1.9) # 返回小数和整数部分 73 74 print cmp(1,1) 75 print cmp(1,2) 76 print cmp(4,1) 77 78 def numeric_random(): 79 """ 80 choice(seq) 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。 81 randrange ([start,] stop [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1 82 random() 随机生成下一个实数,它在[0,1)范围内。 83 seed([x]) 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。 84 shuffle(lst) 将序列的所有元素随机排序 85 uniform(x, y) 随机生成下一个实数,它在[x,y]范围内。 86 :return: 87 """ 88 import random 89 print 'random.choice(range(10)) = ',random.choice(range(10)) 90 print 'random.randrange(0,10,2) = ',random.randrange(0,10,2) 91 print 'random.random() = ',random.random() # 随机生成 [0,1) 92 93 print int(round(random.random(), 2)*100) # 随机生成[0,100] 94 95 print 'random.uniform(5,10) = ',random.uniform(5,10) # 返回float型