可变类型: 值变了,但是id没有变,证明没有生成新的值而是在改变原值,原值是可变类型,不可hash。
不可变类型:值变了,id也跟着变,证明是生成了新的值而不是在改变原值,原值是不可变,可hash。
1 x=10
2 print(id(x))
3 x=11
4 print(id(x)) #id随着值得改变而改变
5
6
7 y=['a','b','c']
8 print(id(y))
9 y[0]='A'
10 print(y)
11 print(id(y))
12 结果: 31273608
13 ['A', 'b', 'c']
14 31273608 #证明列表类型属于可变类型
数字类型
一: 整型int
======================================基本使用======================================
1、用途: 记录年龄\等级\各种号码
2、定义方式:
age=18 # age=int(18)
x=int('123') #只能将纯数字的字符串转换成整型
print(type(x))
print(int(3.7))#取整,非四舍五入
3、常用操作+内置的方法
赋值\比较\算术
======================================该类型总结====================================
存一个值
不可变(1、可变:值变,id不变。可变==不可hash 2、不可变:值变,id就变。不可变==可hash)
print(hash(10))
二:浮点型float
======================================基本使用======================================
1、用途: 记录身高\体重\薪资
2、定义方式
salary=1.3 #salary=float(1.3)
x=float('3.1')
print(x,type(x))
了解:
复数 x=1-2j print(x,type(x)) print(x.real)#1,实数 print(x.imag)#2,虚数 长整型 Python2 的方法,Python3 取消了 其他进制=>十进制 十进制: 0-9 11 = 1*10^1 + 1*10^0 二进制: 0 1 11 = 1*2^1 + 1*2^0 八进制: 0-7 11 = 1*8^1+1*8^0 十六进制:0-9 A-F 11 = 1*16^1+1*16^0 十进制=>其他进制 print(bin(13)) # 十进制=>二进制 print(oct(13)) # 十进制z=>八进制 print(hex(13)) # 十进制=>十六进制