#字符串 str(string)
- 定义:C语言中的字符串是连续存储的一串字符,以\0作为结束符
python中的字符串本质也是同c,是以对象来处理,用法和C++相类似。 - 表示方法:
' 单引号
" 双引号
''' 三单引号 #可换行,内容末尾会出现相应的转义字符
""" 三双引号 #同上 - 注意,以上表示方法的设计,是为了,字符串内部进行嵌套。同时尽量少的使用转义字符。
- raw字符串:让转义符号 \ 失效
#python字符串编码
- ASCII编码
- 扩展ASCII编码(传入欧洲),
最高位置1,另外得到127个
用两个字节,可以有256*256=65536个字符。简体中文常见的编码方式为GB2312,两个字节表示一个汉字。 - Unicode编码
以上两字节存在的问题:
还不够用
编码方式繁多,导致传输文件或邮件操作时,要知道其编码方式,否则会出现乱码 - unicode编码的规模可以容纳100多万个符号。
- utf-8编码:
规则:
1)对于单字节的字符,字节的第一位设为0,后面7位为这个符号的Unicode码,因此,对于英语字母,UTF-8和ASCII码是相同的。
2)对于n字节的符号(n>1),第一个字节的前n位都设为1,第n+1位设为0,后面的字节的前两位一律设为10。剩下的没有提及的二进制位,全部为这个字符的Unicode码。 - GB2312编码:
小于127,与原来一样,两个大于127的字符连在一起时,就表示一个汉字,可以表示7000多个 - GBK编码:
国标扩展。
#python中unicode编码,utf-8,gbk转换的处理
- coding时,Python默认的存储是ASCII编码的,超过127位时,在编程时,必须指定编码方式
- 解决方式:
1)文件开头,写#coding=UTF-8,适用的范围是linux,mac操作系统
文件开头,写#coding=GBK,适用在windows操作系统 - 存在的问题,不同的操作系统之间还要进行转换,解决方式:
utf-8====》unicode======》gbk====vv=====》unicode=====》utf-8
2)通过函数设置编码格式
import sys
sys.setdefaultencoding('utf-8')
or
sys.setdefaultencoding('gbk')
3)手动设置编码格式:
encoding("utf-8"):unicode编码转换为utf-8编码
decoding("utf-8"):utf-8编码解码为unicode编码
#字符串的处理
- 拼接:"hello,"+"world"
- 比较大小,按字典字母序
- 索引 index:
语法:字符串[整数值]
说明:
序列都可以用索引来访问序列中对象
正向索引从0开始,
负向索引从-1开始, - 切片:
语法:字符串[strat:end:step],start,end为整数,大小在字符串长度以内, step亦为整数。 - 常见的序列函数
- 编码转换函数
- 二进制转换函数
#python3中常见的字符串方法
- 字符串的属性方法:(将字符串封装,面向对象的形式,避免代码复用)
isdigit():是否全为数字
isalpha()
islower()
isupper()
center(sub[,start[,end]]),居中,sub为填充的字符
cout("sub"):sub子串的个数
find(sub,[start[,end]]):查找sub的索引位置
title():首字母大写的标题
replace(sub1,sub2[,count]):sub2替换sub1