问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

了解python中bytes,str和unicode的区别

发布网友 发布时间:2022-04-23 13:32

我来回答

2个回答

热心网友 时间:2022-04-06 15:25

首先来说把Unicode转换为为原始8位值(二进制数据),有很多种办
编写Python程序的时候,核心部分应该用Unicode来写,也就是python3中的str,python2中的unicode
python3中2种表示字符序列的类型:bytes和str
前者的实例包含了原始8位值,后者的实例包含了Unicode字符
python3中接受bytes和str,并总是返回str:
def to_str(bytes_or_str):
if isinstance(bytes_or_str, bytes):
return bytes_or_str.decode('utf-8')
return bytes_or_str1234

python3中接受bytes和str,并总是返回bytes:
def to_bytes(bytes_or_str):
if isinstance(bytes_or_str, str):
return bytes_or_str.encode('utf-8')
return bytes_or_str1234

python2中2种表示字符序列的类型:unicode和str
与python3刚好相反:后者的实例包含了原始8位值,前者的实例包含了Unicode字符
python2中接受unicode和str,并总是返回unicode:
def to_str(bytes_or_str):
if isinstance(bytes_or_str, str):
return bytes_or_str.decode('utf-8')
return bytes_or_str1234

python2中接受unicode和str,并总是返回str:
def to_bytes(bytes_or_str):
if isinstance(bytes_or_str, unicode):
return bytes_or_str.encode('utf-8')
return bytes_or_str1234

python2和python3需要注意的事情
1.python2中如果str只包含7位的ASCII字符,那么unicode和str 就是同一种类型,可以+操作
2.python3内置的open函数获取文件句柄,默认采用utf-8的格式操作文件,python2则默认是二进制
python2 的写法:
with open("/temp/file.bin",'w')as f :
f.write(os.urandom(10))12

python3 的写法:
with open("/temp/file.bin",'wb')as f :
f.write(os.urandom(10))12

ps:如何让你的代码pythonic

热心网友 时间:2022-04-06 16:43

str是经过编好码的字符串,如unicode,gb2312,ascii编码,可以表示不同语言中的字符,可以解码成byte byte是字节,只能是ascii码0-255的字符,表示未经编码处理的原始字符串
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
临沂比较有名的男装品牌 呼伦贝尔市悦动网络科技有限公司怎么样? 呼伦贝尔中汇实业有限公司怎么样? 呼伦贝尔油玉不绝电子商务有限公司怎么样? 如何避免wps卡顿? 属鼠的男人找对象是属什么,属鼠的人和什么属相合 96年鼠的姻缘在哪年 属相相合年份运势提升 2024属鼠找对象属什么最佳 黑客攻击网站能报案吗 黑客攻击报案有用吗 长沙首套房证明怎么开?在哪里开 现在长沙买首套住房首付最少要付几成?还要其他的费用吗? 长沙首套房购买人条件是什么呢? 长沙新房首付是多少? 长沙首套房认定标准,长沙如何算首套房 长沙买房限购吗?长沙首套房首付是多少 长沙首套房满足什么条件可购买二套房? 长沙首套房首付是多少? 外地有房长沙无房,在长沙买房算首套房吗? 长沙首套房契税新政策是什么? 建行信用卡已经还了最低还款了,为什么还有短信通知? 建行信用卡到了还款日为什么不给我发信息 怎样把KINDLE阅读器的英文改中文 怎样使用短信办理建行帐单分期 孕妇可以吃枸杞红枣桂圆乌鸡汤吗 怀孕的时候,孕妇吃鸡炖红枣枸杞可以吗? 建行信用卡有还款短信提醒吗 孕妇可以吃乌鸡炖枸杞汤吗 建行信用卡在还款日之前都会发短信提示吗? 孕妇乌鸡炖汤可以放红枣枸杞不 长沙商业贷款首套房首付比例是多少? python str和byte的区别 python里有关byte和str python3 中如何进bytes串转换成str? python中为什么从str到bytes的转化会出现类似' \x** '的形式 Python2和3中关于str和unicode以及UTF-8的更改到底是什么意思 python2 和python3 encode 的区别 请问python中这字符串转bytes怎么做算的? python3转成bytes其中bytes()与encode()有什么区别? python怎么把字符格式变为int格式? 借呗为什么没有额度 蚂蚁借呗单笔还款有限额吗?为什么我的银行卡一次只能还款一万, 蚂蚁借呗可以单笔提前还款吗 我的iPhonexr被偷了 每次查找定位时都是离线 他是已经卖了吗 还是怎么样 还能找回吗? 苹果xr怎么设置跟踪老公的苹果手机? 支付宝蚂蚁借呗300.000是三千还是三万? 你好,我苹果xr手机丢了,我没开定位gps没开,如何能找到? 借呗24小时之内还你有利息产生吗? 借呗里的单笔大额借款如何分开还 苹果xr更新系统后怎么查询其他苹果手机的定位?