s = '人'
s = s.encode('gbk') # 编码
print (s)
s = s.decode('gbk') #解码
print(s)
s = '\'zhdsldskf\''
# \转义字符 可以把单引号 当成文本打印出来
print (s)
s = '\\' # 把单斜杠打出来
print (s)
字符串的切片,类似列表
s = 'abcdefghjklmn'
s1= s[1:4]
print(s1)
s2= s[:-1]
print(s2)
s2= s[-1:]
print(s2)
s2= s[::-1]
print(s2)
字符串的查找
字符串.find(str, beg=0, end=len(字符串))
在0到end之间查找字符串中是否存在str,存在返回在字符串中的最小下标,不存在返回 -1
s = '人的你人的他人的谁'
s = s.find('的',1,6)
print (s)
与find()一样 只是查找顺序从有开始,下标顺序不变
s = '人的你人的他人的谁'
s = s.rfind('的')
print(s)
字符串.index(str,beg=0,end=len(字符串))
从0到end查找str在字符串中的最小下标,找到返回下标,找不到报错
s = '人的你人的他人的谁'
s = s.index('你')
print(s)
与index() 类似 只是从右侧开始查找 找不到报错 :ValueError: substring not found
s = '人的你人的他人的谁'
s = s.rindex('的')
print(s)
字符串的替换
replace(a,b,num) 替换字符串
即要把 a 替换成 b 几次
a='qwsedaqs'
a.replace('q','3',1)
print(a)
a='qwsedaqs'
a.replace('q','3',2)
print(a)
字符串的统计
字符串.count(str,start,end ) 查询str在字符串中出现的次数,查询范围可以设置也可以不设置
s = '人的你人的他人的谁'
count = s.count('人人')
print(count)
字符串的分割
字符串.split(str,num) 把字符串以str 为分割,以num为分割的次数,返回一个列表
s = '人的你人的他人的谁'
ls =s.split('人',2)
print(ls)
字符串.splitlines(布尔类型) 按照行分割 如果为真,保留换行符,为假,不保留换行符
s = '人的你人\n的他人的谁'
ls = s.splitlines()
print(ls)
字符串.partition(str) 从str开始,把字符串分成以str为一部分,其前后各为一部分的三个元素的元组
s = '人的你人的他人的谁'
tu = s.partition('的')
print(tu)
字符串.rpartition(str) 与partition()类似 只是从右边开始分割
s = '人的你人的他人的谁'
tu = s.rpartition('的')
print(tu)
字符串.startswith(str,beg==,end=) 判断字符串是不是以str开头 beg 和end 可以指定开始结束的范围
字符串.endswith(str,beg==,end=) 判断字符串是不是以str结尾 beg 和end 可以指定开始结束的范围
s = '人的你人的他人的谁'
print(s.startswith('人',4,7))
print (s.endswith('的',7,8))
s = '人的你人的他人的谁'
print(s.isalnum())
#字符串.isalnum() 判断所有字符都是字母或数字,是返回True,不是返回False
print(s.isalpha())
#字符串.isalpha() 判断所有字符都是字母, 是返回True,不是返回False
print(s.isdigit())
#字符串.isdigit() 判断所有字符都是数字,是返回True,不是返回False
print(s.isupper())
#字符串.isupper() 判断所有字符是不是都是大写,是返回True,不是返回False
print(s.islower())
#字符串.islower() 判断所有字符是不是都是小写,是返回True,不是返回False
print(s.isspace())
#字符串.isspace() 判断所有字符是不是都是空格,是返回True,不是返回False
字符串的大小写
字符串.capitalize() 如果字符串的第一个值是字符,把字符串的第一个字母大写,其余字母全部小写
s='你abcd'
s= s.capitalize()
print(s)
字符串大小写替换
na = 'ADFaaaadffff'
print(na.swapcase())
字符串.title()
s= 'adfAag'
print(s.title())
#字符串.title() 把字符串的首字母大写,其余全部字母小写
# r如果是分开的两个字符串,首字母都大写
字符串.upper()
s= s.upper() # 字符串.upper() 把字符串中的所有字母大写
print(s)
字符串.lower()
s= s.lower() # 字符串.lower() 把字符串中的所有字母小写
print(s)
字符串的对齐
字符串.ljust(width)
s = 'abcd'
s1=s.ljust(20) #字符串.ljust(width) 把字符串左对齐,并用空格填充至指定宽度width,返回一个新字符串
print('%s-'%s1)
print(s)
字符串.ljust(width)
s2 = s.rjust(20)#字符串.ljust(width)把字符串右对齐,并用空格填充至指定宽度width,返回一个新字符串
print('-%s'%s2)
字符串.center(width)
s3 = s.center(10)#字符串.center(width)把字符串居中,并用空格填充至指定宽度width,返回一个新字符串
print('-%s-'%s3)
字符串的裁剪
字符串.strip(参数) 删除字符串的前后,如果没有参数,删除前后空格,有参数删除字符串中带的前后参数
s = ' de s d '
s = s.strip()
print(s)
s = s.strip('d')
print(s)
字符串.lstrip(参数) 删除字符串的左侧,如果没有参数,删除左侧空格,有参数删除字符串左侧中带的参数
s = ' del d '
s1 = s.lstrip()
print(s1)
print('--'*20)
s = ' deld '
s2 = s.lstrip(' d')
print('*%s*'%s2)
字符串.rstrip(参数) 删除字符串的右侧,如果无参数,删除右侧空格,有参数删除字符串右侧中带的参数
s = ' deld '
s3 = s.rstrip()
print('*%s*'%s3)
s4 = s.rstrip('d ')
print(s4)
字符串的合并
# 字符串.join(列表) 把列表用字符串当成分割的部分进行重新组成成一个新的字符串
# 用字符串把列表进行分割,组成新的字符串
# ls= ['q','b','d']
s = '/'
s1= s.join(ls)
print('/%s'%s1)
print(s)