1.字符串切片s [start: end: step]
反转字符串
间隔逆向的取出字符串:
反方向的截取部分的字符串:
无步长简单从左往右按索引,实切时左边是start右边少取一位
步长为负数,表示从右向左取字符串,步长的绝对值大于1表示间隔的取数。
用0~1正向索引时start大于end的下标,步长为负数。
2.内置函数
1.关于字母
1. '连接符'.join(要被连接的列表)
join()是一个字符串方法,它返回被子字符串连接的字符串。
list1 = ['1','2','3','4']
print('-'.join(list1)) #>>1-2-3-4
print(''.join(list1) #>>1234 用空字符连接
2.str.split(分隔符,切刀数)返回为列表形式的分割后的子字符串列。
分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
切刀数可省略,默认为-1,即分割所有。
str = "Line1-abcdef \nLine2-abc \nLine4-abcd";
print(str.split( )) # 以空格为分隔符,包含 \n
#>>['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
print(str.split(' ', 1 )) # 以空格为分隔符,分隔成第一处分隔符切一刀
#>>['Line1-abcdef', '\nLine2-abc \nLine4-abcd']
当不给split函数传递任何参数时,分隔符会采用任意形式的空白字符:空格、tab、换行、回车以及formfeed。
str = "I am a boy."
print( str.split() )
str = "I\tam\ta\tboy."
print( str.split() )
#>>['I', 'am', 'a', 'boy.']
#>>['I', 'am', 'a', 'boy.']
3.count()
计字符串里某个字符出现的次数。
str.count("char", start,end) start省略默认0,end省略默认len(str) -> int 返回整数
start,end规则与字符串切片一样,左相同又少一
str = "inba ns xmasan"
print(str.count('a'))
print(str.count('a',2,10))
print(str.count('a',10,12))
#>>3
#>>1
#>>1
3.位置对齐
str = "2134"
print(str.zfill(8))#右对齐
print(str.rjust(8,'*'))#右对齐,默认空格填充
print(str.center(8,'*'))#居中
print(str.ljust(8,'*'))#左居中
00002134
****2134
**2134**
2134****
s = 'hello good boy doiido'
>>>print s.startswith( 'h' )
True
>>> print s.startswith( 'hel' )
True
>>> print s.startswith( 'h' , 4 )
False
>>> print s.startswith( 'go' , 6 , 8 )
True
#匹配空字符集
>>> print s.startswith('')
True
#匹配元组
>>> print s.startswith(( 't' , 'b' , 'h' ))
True
#常用情况
>>> if s.startswith( 'hel' ):
print "you are right"
str1="abcasasa"
print(str1.find('a',2))#>>3 返回第一次出现的位置
注:此处的空格包含'\n', '\r', '\t', ' '
指定要去除的首尾字符,编译器会去除两端所有相应的字符,直到没有匹配的字符。指定的字符表示的一种组合,例如'do'表示'dd','do','od','oo','ddd','ooo'等
dodo = "say hello say boy saaayaaas"
print(dodo.strip('say') )
print(dodo.strip('yas') )
#当传入的参数中加入空格时
print(dodo.strip('say ') )
print(dodo.lstrip('say') )
print(dodo.rstrip('say') )
hello say boy
hello say boy
hello say bo
hello say boy saaayaaas
say hello say boy
列表list
列表中各元素间是有序的,属于序列类型。列表可以进行元素的 添加,删除,查找,替换 等操作。列表长度没有限制,不需要定义长度,列表中的元素类型可以不同,可以是 字母,数字,集合,列表,元组,字符串等。
-
aList = [123, 'xyz', 'zara', 'abc', 123] bList = [2009, 'manni'] aList.extend(bList) print("Extended List : ", aList) Extended List : [123, 'xyz', 'zara', 'abc', 123, 2009, 'manni']
-
ls1 = [1,2,3,4,5,6] ls2 = [1,2,3,4,5,6] ls1.append(12) #可以添加列表,字典,元组,集合,字符串等 ls2.append([1,"a"]) #添加列表 ls2.append({2:"a",3:"hj"}) #添加字典 ls2.append((1,"k",3)) #添加元组 ls2.append({"1","2","h"}) #添加集合 ls2.append("123abc") #添加字符串 print(ls1.append(12)) #无返回值 print(ls1) #append()函数的操作对象是原列表。 print(ls2) #结果 None [1, 2, 3, 4, 5, 6, 12, 12] [1, 2, 3, 4, 5, 6, [1, 'a'], {2: 'a', 3: 'hj'}, (1, 'k', 3), {'2', '1', 'h'}, '123abc']
max(list):返回列表元素最大值
min(list):返回列表元素最小值
list(seq):将元组转换为列表
.计算一句话中空格隔开的元素个数
s1="swh wsh wsh awis"
print(len(s1.split())) #>>4