基础数据类型 -- 数字

 

数据类型转换

In [1]:
# 将数字转化成字符串
In [2]:
str(12345)
Out[2]:
'12345'
In [3]:
# 将数字转化为布尔值,非0转化为True,0转化为False
In [4]:
print(bool(-1),bool(0),bool(1))
 
True False True
In [5]:
# 转化为浮点数和负数
In [6]:
print(float(11),complex(11))
 
11.0 (11+0j)
In [7]:
# 进制转换,转换为二进制,八进制,十六进制
In [8]:
print(bin(17),oct(17),hex(17))
 
0b10001 0o21 0x11
In [35]:
# 将数字转化为ascii码十进制数字对应的字符
In [36]:
chr(97)
Out[36]:
'a'
 

数学运算

 

基本运算符 "加+"","减-","乘*","除/","乘方**","取余%"

In [10]:
print(2+2,2-2,2*2,2/2,2**2,2%2)
 
4 0 4 1.0 4 0
 

数字运算的函数

 
sum()求序列元素和
In [13]:
sum([1,2,3,4,5,6])
Out[13]:
21
In [14]:
# 还可以另外加一个数
In [15]:
sum([1,2,3,4,5,6],-6)
Out[15]:
15
 
min() 求序列元素最小值,可以传递一个函数,取函数返回值最小的元素
In [17]:
min([1,4,0,9,6])
Out[17]:
0
In [18]:
min([],default=0) # 序列为空设置默认值
Out[18]:
0
In [19]:
min([-9,1,23,5],key=abs) # 取绝对值最小
Out[19]:
1
 
max() 求序列的最大值,可以传递一个函数,取函数返回值最小的元素
In [20]:
max([1,4,0,9,6])
Out[20]:
9
In [21]:
max([],default=100) # 序列为空设置默认值
Out[21]:
100
In [23]:
max([-9,1,23,5],key=abs) # 取绝对值最大
Out[23]:
23
 
abs() 计算绝对值
In [24]:
abs(5),abs(-5)
Out[24]:
(5, 5)
 
divmod() 返回商和余数
In [25]:
divmod(10,2)
Out[25]:
(5, 0)
In [26]:
divmod(10,3)
Out[26]:
(3, 1)
 
round()小数精确,四舍五入指定保留指定位小数,不指定默认为0,返回整数
In [27]:
round(3.14159,2)
Out[27]:
3.14
In [28]:
round(3.14159)
Out[28]:
3
 
pow() 幂运算
In [29]:
pow(3,2) # 3**2
Out[29]:
9
In [30]:
pow(2,3,2) # 可以传递第三个参数,前两个数的结果出第三个参数取余
Out[30]:
0
 
range() 指定范围生成数字生成器
In [31]:
list(range(10)) # 强转为列表,生成从0开始到10之间的整数,顾头不顾尾
Out[31]:
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
In [32]:
list(range(3,10)) # 两个参数指定起始位置和结束位置,结束为位不能大于起始位
Out[32]:
[3, 4, 5, 6, 7, 8, 9]
In [33]:
list(range(0,10,2)) # 指定步长,必须有三个参数
Out[33]:
[0, 2, 4, 6, 8]
In [34]:
list(range(10,0,-2)) # 反向生成,起始位大于终止位,且步长为负数
Out[34]:
[10, 8, 6, 4, 2]
 

random模块,生成随机数字

In [38]:
import random
 

随机小数

In [39]:
random.random() # 生成0至1之间的小数
Out[39]:
0.741678636860882
In [40]:
random.uniform(1,3) # 指定范围生成小数
Out[40]:
1.509361128720627
 

随机整数

In [41]:
random.randint(1,2) # 指定范围生成数字,必须是两个数字指定范围,前后都包含
Out[41]:
1
In [42]:
random.randrange(100) # 类似于range,顾头不顾尾,从0到100
Out[42]:
6
In [43]:
random.randrange(1,2) # 从1到2
Out[43]:
1
In [44]:
random.randrange(90,100,2) # 带步长
Out[44]:
98
 

从一个序列中随机选择

In [45]:
# 选择一个元素
In [46]:
random.choice('abc')
Out[46]:
'c'
In [47]:
# 选择指定元素
In [48]:
random.sample([1,'23',[4,5]],2)
Out[48]:
[1, [4, 5]]
In [49]:
random.sample([1,'23',[4,5]],1)
Out[49]:
[1]
 

打乱一个序列的顺序

In [50]:
item=[1,3,5,7,9]
In [51]:
random.shuffle(item)
In [52]:
item # 改变了原列表
Out[52]:
[9, 1, 7, 5, 3]
posted @ 2018-03-26 22:35  瓜田月夜  阅读(110)  评论(0)    收藏  举报