Python如何表达字符串?

Python的字符串是由单引号‘’和双引号“”括起来的任意文本。

(1)如果文本本身包含单引号,则用双引号来括。

        例如"I'm a teacher"

(2)如果文本本身包含双引号,则用单引号来括。

        例如 'They say: " How are you " '

(3)如果既包含单引号又包含双引号,则需要借助转义字符 \ 来表达。

        例如 ' I\'m \"OK\"!  ' 表示字符串I'm "OK"!

        这里 \' 表示字符串中的单引号, \" 表示字符串中的双引号

(4)转义字符是 ‘\’ 开头的特殊功能字符

        \n表示回车换行, \t表示tab键, \\表示‘\‘自己等等。

(5)如果一个字符串中含有%,则是用%%来表示一个%,因为%本身也是一个格式说明符

(6)'''...'''的格式表示多行内容。

        例如:'''line1

                     line2 

                     line3'''

(7)字符编码

        最初用8bit数字来存储文本,可表达255个字符。ASCII码。(美国人发明)

        中文需要两个字节,并且不能与ASCII冲突,所以,中国制定了GB2312编码。

        日文Shift_JIS,韩文Euc-kr。。。。。。 多语言混合出现乱码。

        Unicode

        鉴于上述情况,人们发明了Unicode编码,把所有语言都统一到一套编码里。

        现代操作系统和大多数编程语言都直接支持。

         UTF-8

        Unicode有一个缺点,那就是编码长度是固定的。它要兼顾像中文这样两个字节的编码。而两个字节表达一个英文字母,看起来确实太奢侈了,于是,人们发明了Unicode,可变长编码,1-6个字节。英文字母1个字节,汉字通常3个字节,生僻字符4-6字节。

        

         计算机系统通用的字符编码工作方式如下图:

        

        

        (8)几个字符串方法

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

        chr()函数把编码转换为对应的字符。

        例如:chr(25991)结果为‘文’

        可以直接用\u开头加十六进制数表示字符

        例如:‘\u4e2d\u6587 ’  表示‘中文’

        字符串从内存到磁盘(Unicode->bytes)

        例如:‘abc’ ->  b‘abc’(每个字符1个字节)

        encode()方法可以编码为指定的bytes。

        例如:'ABC'.encode('ascii’)

                 '中文'.encode('utf-8’)

        decode()方法

        将从磁盘或网络读到的bytes变成str

                b'ABC'.decode('ascii’)

                b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8’)

        如果有一小部分无效字节,可忽略。

                 b'\xe4\xb8\xad\xff'.decode('utf-8', errors='ignore')

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

猎风工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值