python 字节与字符串转换
1、如果没有设置字符串编码格式,那么将采用系统默认编码格式
name = 'laogaoyang' # 采用系统默认编码格式
nameBytes = name.encode('utf-8') # 先将 name 解码(采用系统默认格式),然后用 'utf-8' 编码
nameStr = nameBytes.decode('utf-8') # 用什么格式编码就需要用同样格式去解码,否则出错
说明:
name.encode('utf-8') 此处将 name 重新编码为 'utf-8',要重新编码首先要解码,此处并没有指明解码方式,那么将采用系统的默认解码格式(编解码格式相同,不会出错)
2、主动设置字符串编码格式为 'utf-8',假设系统编解码格式为 'ascii'
# -*- coding: utf-8 -*-
name = 'laogaoyang' # 采用指定的编码格式 'utf-8'
nameBytes = name.encode('utf-8') # 这里出错了
说明:
上一个例子编码成 'utf-8' 是正常的,因为编解码格式相同
此处编码采用 'utf-8'格式,并没有指明解码方式,那么将采用系统的默认解码格式(即 'ascii', 编解码格式不相同,出错),修正方法有两种,如下所示
明确指定解码格式
# -*- coding: utf-8 -*-
name = 'laogaoyang' # 采用指定的编码格式为 'utf-8'
nameBytes = name.decode('utf-8').encode('utf-8')
修改默认解码格式
# -*- coding: utf-8 -*-
import sys
sys.setdefaultencoding('utf-8')
name = 'laogaoyang' # 采用指定的编码格式 'utf-8'
nameBytes = name.encode('utf-8')
python 字节与字符串转换的更多相关文章
- python 数字和字符串转换问题
一.python中字符串转换成数字 (1)import string tt='555' ts=string.atoi(tt) ts即为tt转换成的数字 转换为浮点数 string.atof(tt) ( ...
- python :eval将字符串转换成字典
#将字符串打印成字典 b=''' {'record': {'weight':20,'server':'100.1.7.9','maxconn':50},'backend': 'www.oldboy.o ...
- python 字节与字符串转化
name = 'laogaoyang' # 采用系统默认编码格式 nameBytes = name.encode('utf-8') # 先将 name 解码(采用系统默认格式),然后用 'utf-8' ...
- Python 字节与字符串的转换
html = urlopen("http://www.cnblogs.com/ryanzheng/p/9665224.html") bsObj = BeautifulSoup(ht ...
- python学习之字符串转换
配置环境:python 3.6 python编辑器:pycharm 代码如下: #!/usr/bin/env python #-*- coding: utf-8 -*- def strCase() ...
- python UTC,时间戳,字符串转换
#!/usr/bin/env python #_*_coding:utf-8_*_ # 本地时间 转换 为时间戳 import time import pytz import datetime dat ...
- 字符编码 and 字节和字符串转换(待补充)
ascii用一个字节(8位二进制)代表一个字符 Unicode常用2个字节(16位二进制)代表一个字符,生僻字需要用四个字节 汉字中已经超出了ASCII编码的范围,用Unicode, Unicode兼 ...
- python 基础 列表 字符串转换
1. 字符串转列表 str1 = "hi hello world" print(str1.split(" "))输出:['hi', 'hello', 'worl ...
- python中字节与字符串的转换
#bytes object byte = b"byte example" # str object str = "str example" ...
随机推荐
- htons
在Windows和Linux网络编程时需要用到的,用来将主机字节顺序转化为网络字节顺序,以Windows下的代码为例: 1 2 #include<winsock2.h> u_shortht ...
- CSS学习笔记——响应式布局
响应式布局 响应式布局是现在很流行的一个设计理念,随着移动互联网的盛行,为解决如今各式各样的浏览器分辨率以及不同移动设备的显示效果,设计师提出了响应式布局的设计方案.所谓的响应式布局,就是一个网站能够 ...
- JavaScript学习笔记——运算符和表达式
javascript运算符 一.运算符和操作数的组合就称为表达式. 二.javascript运算符 (一) 算术运算符 + - * / % var++ ++var var-- --var A. + ( ...
- JS数组类型检测
在强类型语言,数组类型检测是非常容易的事情(typeof就可以解决),而在弱语言JS数据类型就很容易混淆了. JS中常见的数据类型有:number.string.boolean.undefined.f ...
- JAVA JLabel自定义子类无法显示
import java.awt.*; import java.util.Scanner; import javax.swing.*; public class Test_16_13 extends J ...
- GIT@OSC中托管Android studio代码
弄了好久,才知道如何向GIT@OSC托管代码,这里有需要的同学可以参考一下. 1.在GIT@OSC上新建一个工程 2.在AS中新建一个工程 3.在AS中选择“enable version contro ...
- GoLang之方法与接口
GoLang之方法与接口 Go语言没有沿袭传统面向对象编程中的诸多概念,比如继承.虚函数.构造函数和析构函数.隐藏的this指针等. 方法 Go 语言中同时有函数和方法.方法就是一个包含了接受者的函数 ...
- Lua 之table库
标准table库 table.concat(table, sep, start, end) concat是concatenate(连锁, 连接)的缩写,table.concat()函数列出参数中指定 ...
- mysql计划任务每天定时执行
代码例子:CREATE EVENT `course_listener` ON SCHEDULE EVERY DAY STARTS '2012-07-18 00:00:00' ON COMPLETION ...
- CF467 AB 水题
Codeforces Round #267 (Div. 2) (C和D的题解单独写:CF467C George and Job (DP) CF467D Fedor and Essay 建图DFS) C ...