零基础学python day04 进制和编码

1.python代码的运行方式

  • 脚本式
  • 交互式

2.进制

计算机中底层所有数据都是以01010的形式存在

2.1进制转换

在这里插入图片描述
25
bin(25) 十进制转换为二进制 “0b11001” 字符串形式存在
oct(25) 十进制转换为八进制 “0o27” 字符串形式存在
hex(25) 十进制转换为十六进制 “0x1c” 字符串形式存在

int(“0b11001”,base = 2) 二进制转换为十进制
int(“0o27”,base = 8) 八进制转换为十进制
int(“0b1c”,base = 16) 十六进制转换为十进制

3.计算机中的单位

  • b(bit) ,位 几个二进制
  • B(byte), 字节 8位是一个字节
  • KB(kilobyte) 千字节 1024个字节
  • MB(Megabyte) 兆字节 1024KB
  • GB(Gigabyte) 千兆字节 1024MB
  • TB 万亿字节
  • PB/EB/ZB/YB/BB/NB/DB

4.编码

编码:文字和二进制之间的一个对照表

4.1ascii编码

ascii规定用1个字节表示字母与二进制的对应关系

4.2 gb-2312编码

gb 2312编码,由国家信息标准委员会制作(1980年)
gbk编码,对gb2312进行拓展,包含了中日韩等文字(1995年)

4.3 unicode

Unicode也称万国码,为全球每个文字都分配了一个码位(二进制表示)

  • Ucs2 用两个字节表示一个文字
  • Ucs4 用4个字节表示一个文字

4.4 utf-8编码

utf-8实质上是对unicode的压缩,用尽量少的二进制去与文字进行对应
规则:

UnicodeUTF-8
0000 - 007F0xxxxxxx
0080 - 07FF110xxxxx 10xxxxxx
0800 - FFFF1110xxxx 10xxxxxx 10xxxxxx
10000 - 10FFFF11110xxx 10xxxxxx 10xxxxxx 10xxxxxx

“武” -> 6B66 -> 0110 1011 0110 0110
根据模板套数据
1110xxxx 10xxxxxx 10xxxxxx
11100110 10101101 10100110

4.5 python相关的编码

字符串(str)
字节(byte) 用于问及那或网络处理

name = "水饺"
data = name.encode("utf-8")

#打开一个文件
file_object = open("log.txt",mode="wb")
#在文件中写内容
file_object.write(data)
#关闭文件
file_object.close()

运行结果
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值