字符串操作在各个计算机语言中都是比较常见的操作,下面我们对python的字符串操作做下简单介绍。
一、索引操作
字符串是由一些连续的字符组成,支持索引操作,索引位置从0开始,比如以下代码会输出’P‘字符:
二、截取子串
字符串也可以像列表那样给定起始与终止索引生成一个新的子串,比如以下代码会输出“Py”:
三、连接操作
多个字符串相加会生成一个新串,比如以下代码输出”Love Python“:
四、大小写转换
调用字符串的upper与lower方法会分别生成新的大写和小写的字符串,比如以下代码第一个输出:”I LOVE PYTHON“,第二个输出:”i love python“:
五、前后缀判断
调用字符串的startswith与endswith方法可以判断字符串是否以某个子串开关或者结尾,比如以下会分别打印出 ” python startswith py “ 和 ” python endswith on “:
六、查找与替换子串
调用find方法可以判断是否包含某个子串,比如以下代码会输出" python contains th" 和 " python doesn't contain he":
调用replace方法可以对字符串进行替换,比如要把"hello world"中的”hello“替换为”world“,以下代码会输出:”world world“
七、分隔字符串
如果我们要把一句话按空格分隔为一个一个的单词要怎么做呢,这时调用split方法即可,比如以下代码会把”hello world ni hao“转换为["hello","world","ni","hao"]:
八、清除前后字符
如果一个字符串前后有空白字符,我们需要去掉,你可以调用字符串的替换方法来做,但更简单的做法是调用strip方法,比如以下代码就会去掉两端的空白字符输出“hello python”:
九、大小写对换
如果我们需要把字符串中的小写转换为大写,大写转换为小写,那要怎么做呢,很简单,调用下swapcase就可以了,如以下代码会输出“ heLLO pYThON ”:
十、字符分类判断
有很多方法用来判断一个字符串是否属于某个分类,比如 isdigit判断是否是数字,isalpha判断是否是字母,isalnum判断是否是字母数字等,如下代码:
可以直接通过str类的swapcase方法可以快速实现大写便小写、小写变大写的功能,参考代码如下:
In[1]:s='BaiduZhidao'
In[2]:s.swapcase()
Out[2]:'bAIDUzHIDAO'
Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。
扩展资料:
python参考函数
chr(i)把一个ASCII数值,变成字符
ord(i)把一个字符或者unicode字符,变成ASCII数值
oct(x)把整数x变成八进制表示的字符串
hex(x)把整数x变成十六进制表示的字符串
str(obj)得到obj的字符串描述
list(seq)把一个sequence转换成一个list
tuple(seq)把一个sequence转换成一个tuple
参考资料来源:百度百科-Python (计算机程序设计语言)
利用函数进行字母的大小写转换upper():所有字母大写
lower():所有字母小写
capitalize():首字母大写,其他字母小写
title():每个单词首字母大写,其他小写
示例:
#encoding:UTF-8
msg = 'www.BAIDU.com.123'
print(msg.upper()) #upper()函数,将所有字母都转换成大写
print(msg.lower()) #lower()函数,将所有字母都转换成小写
print(msg.capitalize()) #capitalize()函数,将首字母都转换成大写,其余小写
print(msg.title()) #title()函数,将每个单词的首字母都转换成大写,其余小写
结果:
www.BAIDU.COM.123
www.baidu.com.123
www.baidu.com.123
www.Baidu.Com.123
利用循环语句进行字母的大小写转换
Python中每个字母都有编号,可以根据编号来判断是大写字母还是小写字母,大写字母A的编号为:65,大写字母Z的编号为90,小写字母a的编号为:97,小写字母z的编号为122;大小写字母之间的编号相差32,可以利用这个来进行大写写的转换
示例:
#encoding:UTF-8
msg = 'www.BAIDU.com.123'
for num in msg:
if 97 <= ord(num) <= 122: #小写字母
upper_num = ord(num)-32 #大小写字母之前差了32
#chr()函数可以将编码数值转为字符(python没有字符的概念)
print (chr(upper_num),end='')
else:
print(num,end='') #不是小写字符,原样输出
print() #输出一个换行符
msg = 'www.BAIDU.com.123'
for num in msg:
if 65 <= ord(num) <= 90: #大写字母
upper_num = ord(num)+32 #大小写字母之前差了32
#chr()函数可以将编码数值转为字符(python没有字符的概念)
print (chr(upper_num),end='')
else:
print(num,end='') #不是大写字符,原样输出
结果:
www.BAIDU.COM.123
www.baidu.com.123
————————————————
版权声明:本文为CSDN博主「舍得斋」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u014642915/article/details/103149769