博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python学习笔记(四)——编码和字符串
阅读量:4687 次
发布时间:2019-06-09

本文共 1209 字,大约阅读时间需要 4 分钟。

一、编码

1、编码类别:

(1)ASCII码:127个字母被编码到计算机里,也就是大小写英文字母、数字和一些符号

(2)GB2312码:中国制定的用于加入中文汉字的编码

(3)Unicode:防止由于各种编码出现冲突而导致的乱码问题。最常用的是用两个字节表示一个字符(如果要用到非常偏僻的字符,就需要4个字节)

(4)“可变长编码”UTF-8:Unicode乱码问题解决,然而是以存储为代价的。使用可变长编码可以一定程度上解决存储问题,

2、计算机系统通用的字符编码工作方式

(1)在计算机内存中,统一使用Unicode编码

(2)当需要保存到硬盘或者需要传输的时候,转换为UTF-8编码。

(3)用记事本编辑的时候,从文件读取的UTF-8字符被转换为Unicode字符到内存里,编辑完成后,保存的时候再把Unicode转换为UTF-8保存到文件:

(4)浏览网页的时候,服务器会把动态生成的Unicode内容转换为UTF-8再传输到浏览器

 

二、字符串

1、Python的字符串

     在最新的Python 3版本中,字符串是以Unicode编码的,也就是说,Python的字符串支持多语言

 

2、ord(),chr()

ord():获取字符的整数表示

chr():把编码转换为对应的字符

 

3、str字节数

(1)由于Python的字符串类型是str,在内存中以Unicode表示,一个字符对应若干个字节。

(2)如果要在网络上传输,或者保存到磁盘上,就需要把str变为以字节为单位的bytes。Python对bytes类型的数据用带b前缀的单引号或双引号表示:

x = b'CXW'

(3)以Unicode表示的str通过encode()方法可以编码为指定的bytes

(4)从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法

(5)要计算str包含多少个字符,可以用len()函数:

(6)由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:

#!/usr/bin/env python3# -*- coding: utf-8 -*-

      必须并且要确保文本编辑器正在使用UTF-8 without BOM编码

 

4、格式化

(1)格式化方法’% ‘

 

>>> 'Hello, %s' % 'world'
print("hello %s %s " % (x,x))

(2)如果你不太确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串

(3)%%显示为%

转载于:https://www.cnblogs.com/BlueMountain-HaggenDazs/p/6149176.html

你可能感兴趣的文章
多线程之进度条
查看>>
程序启动的完整过程
查看>>
java资料——哈希表(散列表)(转)
查看>>
反射,invoke()
查看>>
iServer6R使用WMTS自定义比例尺出图
查看>>
pinyin4j的使用
查看>>
Android_ 重写系统Crash处理类,保存Crash信息到SD卡 和 完美退出程序的方法
查看>>
tcpcopy用法
查看>>
34个加速页面载入速度的技巧
查看>>
MAC Objective-C 开发经典书籍推荐
查看>>
OSGi bundle之间互相通信的方法
查看>>
C++ 沉思录——Chap8:一个面向对象程序范例
查看>>
.NET 的编码
查看>>
数据存储——手机内部文件存储
查看>>
HDU 2586 LCA
查看>>
linux安装openldap步骤
查看>>
九度OJ 1035:找出直系亲属(二叉树)
查看>>
hive left outer join的问题
查看>>
32位Win7下安装与配置PHP环境(二)
查看>>
图片、浏览器-HTML5/CSS3系列教程:使用SVG图片-by小雨
查看>>