Python学习笔记 —— 字符串及常用函数
来源:互联网 发布:改进的区域增长算法 编辑:程序博客网 时间:2024/06/06 03:18
在Python
中没有单字符类型,所以单个字符也是作为一个字符串来使用的
Python
字符串要求掌握点
引号、双引号、三引号区别点及使用
转义字符
字符串运算符
字符串格式化
Unicode字符串
常用函数
引号、双引号、三引号区别点及使用
- 引号与双引号无区别,可直接使用
- 与三引号区别为,单双引号只能作用于一行,而三引号可以作用于多行,同时还可以作为注释来使用。
转义字符
使用到特殊字符,不能当作普通字符来处理,需要进行转义【查阅】
\(在行尾) :续行符
表示反斜杠后面的字符:
\\ :反斜杠符号\' :单引号\" :双引号
其他意义:
\a :响铃\b :退格\e :转义\000 :空\n :换行\v :纵向制表符\t :横向制表符\r :回车\f :换页\oyy :八进制数,yy代表字符,例:\o12代表换行\xyy :十六进制数,yy代表字符,例:\x0a代表换行\other :其他的字符以普通格式输出
字符串运算符
+ :字符串连接* :重复输出字符串[] :获取串中索引位置字符 [:] :截取字符串部分in :判断字符串中是否包含给定的字符not in :不包含给定字符返回YESr/R :原始字符串,所有字符串都是直接按字面意思使用,无特殊或转义字符 如:print r’\n’ 输出:\n而不是换行% :格式字符串【见字符串格式化】
字符串格式化
在字符串的输出中我们可能会用到格式化字符串,主要是将其他一些格式以字符串的形式输出
如:
print 'Hello %s you are number %d '% ('Nick',2)#>>> hello Nick you are number 2
格式化符号:
%c :格式化字符%s :格式化字符串%u :格式化无符号整型%o :格式化八进制数%x或%X :格式化十六进制数%f :格式化浮点%e或%E :科学计数法格式化浮点数%g或%G :%f和%e的简写%p :变量地址【指针地址】
- 辅助操作符指令 需要放到格式化符号中间
格式如下:
#如:%u '%'+辅助操作指令+'u'
* :定义宽度或者小数点精度 -> 为一具体数字如: %5d 以五位补充,无数据用空格补充- :左对齐 -> 如%-5d ,左对齐 + :正数面前显示(+)-> 如%+5d,正数面前显示‘+’号,负数显示‘-’号【空格】 :正数面前显示空格 -> 如% 5d,正数前面显示空格,负数显示'-'# :八进制及十六进制标识,八进制显示'0',十六进制显示‘0x’ ->如%#o 为显示八进制,并且前面标注八进制符号'0'0 :显示的数字前面填充'0'【默认填充空格】->%5d,高位不足,以'0'补充% :'%%'输出一个单一的'%'m.n :m显示的最小总宽度,n为小数点后保留位 -> %3.5f ,小数后面保留5位,整体最小宽度为3
Unicode
字符串
Python
中定义Unicode
字符串只需要在串前添加一个u
即可
如:
u'Hello word'
引号前的u
表示这里创建的是一个Unicode
字符串。如果想加入一个特殊字符,需要使用Python
的Unicode-Escape
编码
如:
u'hello\u0020world' #\u0020为空格编码u'hello world'
常用函数
len(string) :计算字符串长度string.count(str) :计算str在string中出现的次数
无参函数:
string.capitalize() :把字符串第一个字符大写string.isalnum() :判断字符串是否只有字母数字string.isalpha() :判断字符串是否只有字母string.isdigit() :判断是否只含有数字string.islower() :判断是否字符串中全部为小写string.isupper() :判断是否字符串中全部为大写string.isspace() :是否只含有空格string.title() :返回标题化字符 【标题样式为:每个单词的第一个字符都是大写】string.istitle() :是否为标题样式 string.lower() :将所有字符串转为小写string.upper() :将所有字符串转为大写string.swapcase() :翻转大小写【大写变小写,小写变大写】string.isnumeric() :判断是否只包含数字字符 【只存在Unicode对象】string.isdecimal() :判断字符串是否只有十进制数字 【只存在Unicode对象】 字符串前有u标志
一参数
string.center(width) :返回一个原字符串居中,用空格填充至长度width的新字符串string.zfill(width) :返回长度为width的字符串,原字符串string右对齐,前面填充0string.expandtabs(tabsize=8):把字符串中的tab符号转为需要空格数量,tab符号默认的空格数为8 参数代表转为几个空格数string.join(seq) :以sting作为分隔符,将seq中所有的元素合并为一个新的字符串 【序列一般为元组或列表】string.ljust(width) :返回一个原字符串左对齐,并使用空格填充至长度width的新字符串string.rjust(width) :返回一个原字符串,右对齐,左边补空格至width宽度max(str) :返回字符串中最大的字母,ASCII码为判断标准min(str) :返回字符串中最小的字母string.partition(str) :将字符串分为一个三元素的元组:(第一个str之前 第一个str 第一个str之后)string.rpartition(str) :类似于partition从右侧开始查找,第一个strstring.lstrip([str]) :裁掉string左边的空格,若有str则直接切去左边strstring.rstrip([str]) :裁掉string右边的空格,,若有str则直接切去右边strstring.strip([str]) :执行lstrip()和rstrip()
多参数
1 . string.count(str,beg=0,end=len(string)) :返回str在string里面出现的次数,如果beg,end指定则返回指定范围内str出现的次数2 . string.encode(encoding=‘UTF-8’,errors=’strict’) :指定编码格式,出错则报出错误,除非errors指定为ignore或replacestring.decode(encoding=‘UTF-8’,errors=‘strict’) :指定解码格式
注:errors—设置不同错误的处理方案。默认'strict',意为编码错误引起一个UnicodeError。其他可设定值有:'ignore','replace','xmlcharrefreplace','backslashreplace'以及通过codecs.register_error()注册的任何值。
3 . string.endswith(obj,beg=0,end=len(string)) :检查字符串是否以obj结束,指定范围则在范围内判断,是返回True,否则返回False4 . string.startwith(obj,beg=0,end=len(string)) :检查串是否以obj开头,其他参上5 . string.find(str,beg=0,end=len(string)) :检测str是否包含在string中,如果指定范围,如果是则返回原字符串的索引值,否则返回-16 . string.rfind(str,beg=0,end=len(string)) :与find一致,从右侧开始7 . string.index(str,beg=0,end=len(string)) :与find方法一致,不过如果不在string中则报一个异常8 . string.maketrans(innate,outtab) :字符映射表,第一个为需要转换的字符,第二个表示转换的目标,都是以字符进行映射的。
例:
#!/usr/bin/python# -*- coding: UTF-8 -*-from string import maketrans #必须调用maketrans函数str = 'This is a very good test'old = 'aeiou'new = '12345'trantab = maketrans(old,new) #old与new的长度需要保持一致print str.translate(trantab)#>>> Th3s 3s 1 v2ry g44d t2st // 由此可以做些简单的加密算法设置
9 . string.translate(str,del=‘’) :根据str给出的表,包含(256个字符)转换string的字符,要删掉的字符放到del参数中
例:
#!/usr/bin/python# -*- coding: UTF-8 -*-from string import maketransold = 'aeiou'new = '12345'trantab = maketrans(old,new)str = 'this is a test'print str.translate(trantab,'th') #替换同时再将所有t h 删除掉
10 . string.replace(str1,str2,num=string.count(str1)) :把string中的str1替换成str2,如果num指定,则替换不超过num次
例:
str = 'this is a test'print strprint str.replace('is','was')print str.replace('is','was',1)#输出:#>>> this is a test#>>> thwas was a test#>>> thwas is a test
11 . string.split(str=‘’,num=string.count(str)) :以str为分隔符切片string,如果numb有指定值,则仅分隔num个字符串
例:
>>> str = 'this is a is goois'>>> str.split(' ')['this', 'is', 'a', 'is', 'goois']>>> str.split(' ',3)['this', 'is', 'a', 'is goois']
12 . string.splitlines(num=string.count(‘\n’)) :按行分隔,返回一个包含行作为元素的列表,如果num指定不为0则,如果
例:
>>> str = '''this is a good test... do you know this?... anyone know this'''>>> str.splitlines()['this is a good test', 'do you know this?', 'anyone know this']>>> str.splitlines(2)['this is a good test\n', 'do you know this?\n', 'anyone know this']>>> str.splitlines(0)['this is a good test', 'do you know this?', 'anyone know this']#注:查看方法说明为,S.splitlines(keepends=False)返回S中的行列表,以行边界为分隔,行分隔并不包括换行符,除非在括号中给定一个非空非0值才会显示分隔符。所以传入一个非0值效果都是一样的。
0 0
- Python学习笔记 —— 字符串及常用函数
- Python学习笔记(4)——常用函数
- [学习笔记]Python 常用函数
- Python 字符串类型定义及常用函数
- Python学习笔记 — 函数
- 《php学习笔记》--字符串、数组常用函数
- c#——字符串及字符串常用函数
- c#——字符串及字符串常用函数
- Python基础入门—常用函数笔记
- PYTHON字符串常用函数
- Python字符串常用函数
- python字符串常用函数
- python常用字符串函数
- Python 字符串常用函数
- Python字符串常用函数
- python常用字符串函数
- Python学习笔记——字符串连接
- Python学习笔记——字符串
- http上传文件深度解析-高性能http传输
- HFSS-MATLAB-API
- 什么是序列化和反序列化
- Python中使用__slots__注意项
- SQL的锁机制
- Python学习笔记 —— 字符串及常用函数
- Android 反编译美图秀秀APK,开发自己的美颜apk
- 如何按字段中的某字符串出现次数排序
- Leetcode_c++: Subsets II (090)
- Git学习一
- DatePicker / NumberPicker
- eclipse注释格式
- 【09.03.24】在Ubuntu中和Android中添加开机自启动的守护进程
- 九度Online Judge:题目1000:计算a+b