Python的入门知识拾遗
一、三元运算
result= 值1 if 条件 else 值2
如果条件为真:result=值1
如果条件为假:result=值2
例:
a,b,c为1,3,5
d=a if a>b else c #如果a>b则d=a 否则d=c
输出:d=5
二、进制
2进制 0,1
8进制 0,1,2,3,4,5,6,7
16进制 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
后缀表示法: BH 相当于11(H表示16进制)
前缀表示法: 0x53相当于83(0x表示16进制)
2进制与16进制转换: http://jingyan.baidu.com/article/47a29f24292608c0142399cb.html
注意:2进制表示8进制,用8位2进制法,(3个2进制数表示1个8进制数即可)
例:5(5)=101 ,10(8)=001 000
2进制表示16进制,用16位2进制法,(4个2进制数表示1个16进制数即可)
例:FH(15)=1111,1F(31)= 0001 1111
三、bytes 类型
二进制类型,音频,视频文件,文件传输(python所有的网络文件传输都是用bytes)
2进制和文本转换,不会像python2里一样会隐式转换,在python3里不能在bytes文件里搜索字符串反之亦然,也不能拼接文本和二进制文件
注意:python3里把bytes数据类型独立了出来
例:以2进制存储的文本可以用文本解码还原
msg="我是帅哥"
print (msg)
print(msg.encode('utf-8'))#Python 3XX 中,utf-8表示源码是utf-8,不指定源码,则系统以(默认编码 python 2xx,utf-8 python 3xx编码)方式转码
print(msg.encode('utf-8').decode(encoding='utf-8'))
输出:
我是帅哥
b'\xe6\x88\x91\xe6\x98\xaf\xe5\xb8\x85\xe5\x93\xa5'#b开头的就是二进制编码
我是帅哥#还原成了文本信息
进程已结束,退出代码0
四,文本数据类型 str