python 基础:shelve使用,字符编码与解码

shelve使用

import shelve

scores = [1,23,4,5]

class Student:
	def __init__(self, name, age):
		self.name = name
		self.age = age
	def __str__(self):
		return self.name
# shelve 写
def write_shelve():
	s = Student('tom', 23)
	db = shelve.open('student_db')
	db['s'] = s
	db.close()

# shelve 读
def read_shelve():
	db = shelve.open('student_db')
	st = db['s']
	print(st)
	print(st.name)
	print(st.age)
	db.close()

if __name__ == '__main__':
	write_shelve()

字符串编码与解码

ascii: 0到127,128个字符
utf-8: 前128个字符为ascii, 后面是可变编码

chr()方法 和 ord方法
chr(65) # 代码点对应的字符 A
ord('A') # 代码点 65
ord('a') # 97
encode()方法 和 decode()方法
'str'.encode('utf-8') # b'str' 代表字节
'str'.encode('ASCII')
b'str'.decode('utf-8')

'str'.encode() # 默认utf-8

# 其他
bytes('abc', 'ascii')
Bom 字节顺序标记
open('data.txt', 'r', encoding='utf-8').read()

# 忽略标记
open('data.txt', 'r', encoding='utf-8-sig').read()
# 写标记
open('data3.txt', 'w', encoding='utf-8-sig').write('课堂')

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值