python按索引删除字符串_2020 python学习第六天————字符串操作和列表操作

1.1 字符串的作用

记录描述性质的状态

1.2 定义方式

在单引号、双引号、三引号内包含的一串字符

1.3 数据类型转换

str可以把任意类型转换成字符串类型

1.4 优先掌握的操作

1.4.1 按索引取值(正向取+反向取)

取出的是由单一字符组成的str

变量名 [ 索引 ]

1.4.2 切片(顾头不顾尾,原来字符串不会变)

变量名 [ 起始位置 :结束位置 :步长 ]

起始位置,结束位置和步长都可以省略

起始位置默认值为0

结束位置默认一直到末尾

步长默认值为1

变量名 [ : ]  #相当于复制操作

1.4.3 长度

len ( 变量名 )  #统计字符的个数

1.4.4 成员运算in和not in

msg = 'hello 你好'

print( "你好" in msg )

print( "你好" not in msg )

1.4.5 移除空白strip

msg=" hello "

res=msg.strip()

默认去掉的是字符串左右两端的空白字符串

可以在括号内填写需要在左右两端去除的字符串

得到的是新字符串,没有改变原来的

1.4.6 切分split

msg="a:b:c:d"

res=msg.split( ' : ' )

split会以括号内的字符为分界将字符串形式的变量切分成列表

1.4.7 循环

for x in "hello 你好"

for循环可以对字符串进行遍历

1.5 需要掌握的操作

1.5.1 strip,lstrip,rstrip

msg="*****hello*****"

print( msg.strip ( '*' ) )

删除收尾的字符

print( msg.lstrip ( '*' ) )

删除左端的字符

print( msg.rstrip ( '*' ) )

删除右端的字符

1.5.2 lower,upper

msg="aABc你1"

print(msg.lower())

字母全小写

print(msg.upper())

字母全大写

1.5.3 startswith,endswith

msg = 'abcdef'

print( msg.startswith( "a" ) )

检查字符串是否是以指定字符串开头

print( msg.endswith( "f" ) )

检查字符串是否是以指定字符串结尾

1.5.4 format的三种玩法

print( 'a b {} d {}' .format( 'c' , 'e' ) )

按照顺序向花括号传值

print( 'a b {x} d {y}' .format( y = 'e' , x = 'c' ) )

根据变量名传值

print('a b {0} d {1}' .format( 'c' , 'e' ) )

根据位置索引传值

python3.5以上可以使用

x = 'c'

y= 'e'

print( f"a b {x} d {y}" )

1.5.5 split,rsplit

print( "a:b:c:d" .split( ':' )

从左往右切分

print( "a:b:c:d" .rsplit( ':' )

从右往左切分

print( "a:b:c:d" .split( ':' , 1 )

split可以指定切分几次

1.5.6 join

把列表拼成一个str,列表中的元素必须全部为str类型

' '.join( list )

1.5.7 replace

print( 'a b b b' .replace( 'b' , 'a' , 1 ) )

replace( '你想替换的字符’ , ‘想替换成的字符’ , 替换的次数 )

次数省略为全部替换

1.5.8 isdigit

age="18"

print( age.isdigit() )

判断是非为存数字

1.6 了解操作

1.6.1 find,rfind,index,rindex,count

print("=abcdefab".find("ab"))

查找一个子字符串在大字符串中出现的起始位置,可选参数为在字符串搜索的开始与结束位置。

print("=adcabdefab".rfind("ab"))

从右往左查找一个子字符串在大字符串中出现的起始位置。

print("====".index("ab"))

找不到则报错,而find则会返回-1。

print("=adcabdefab".count('a'))

统计字符串里某个字符出现的次数。

1.6.2 center,ljust,rjust,zfill

print("a".center(10,'*'))

设置长度为10,字符串居中,其他用*填充。

print("a".ljust(10,'*'))

设置长度为10,字符串靠左,其他用*填充。

print("a".rjust(10,'*'))

设置长度为10,字符串靠右,其他用*填充。

print("a".zfill(10))

设置长度为10,字符串靠右,其他用0填充。

1.6.3 expandtabs

print('a\tb'.expandtabs(3))

改变制表符的空格数。

1.6.4 captalize,swapcase,title

print("my name is a".capitalize())

首字母大写。

print("AbCd".swapcase())

大小写反转。

print("my name is a".title())

标题格式,单词首字母大写。

1.6.5 is数字系列

num1=b'4' #bytes

num2=u'4' #unicode,python3中无需加u就是unicode

num3='四' #中文数字

num4='Ⅳ' #罗马数字

isdigit():用于b和u格式,即num1和num2

isdecimal():用于u格式,即num2

isnumberic():用于u,中文数字、罗马数字,即num2、num3、num4

三者不能判断浮点数

1.6.5 is其他

print('name1'.isalnum()) #字符串由字母或数字组成

print('name1'.isalpha()) #字符串只由字母组成

print("inputasd".isidentifier()) #判断是否用到了关键字

print('name'.islower()) #判断字符串是不是全是小写

print('name'.isupper()) #判断字符串是不是全是大写

print(' '.isspace()) #判断字符串是不是全是空格

print("My Name Is".istitle()) #判断字符串是不是标题格式

1.7 类型总结

字符串只能存放一个值

字符串是有序且是不可变类型

2.1 列表的用途

按照位置存多个值

2.2 定义方式

在[]内用逗号分隔开多个任意类型的值

2.3 类型转换

list(传入的可以是任意能够被for循环遍历的类型)

2.4 优先掌握的操作

2.4.1 索引

按索引改、取值(正向存取+反向存取):既可改也可以取

超出索引范围则报错,即不能用这种赋值操作为列表增加值

2.4.2 切片(顾头不顾尾,步长)

res=list [起始位置:结束位置:步数]

起始位置默认值为0

结束位置默认一直到末尾

步长默认值为1

2.4.3 长度

l=[111,222,333,444,555]

print(len(l))

2.4.4 成员运算in和not in

l=[111,222,333,444,555]

print(111 in l)

print(111 not in l)

2.4.5 追加

l=[111,222,333,444,555]

l.append(666)

2.4.6 往指定位置前插入值insert

l=[111,222,333,444,555]

l.insert(0,00)

2.4.7 删除

l=[111,"aaa",222,333,444,555]

1.del

del是通用的、不是列表专属的删除方式

del l[1]

2.remove

列表专属的删除方式之指定元素删除

l.remove("aaa")

3.pop

列表专属的删除方式之指定索引删除

l.pop(1) # 默认删除的是索引-1对应的值

2.4.8 循环

for item in l:

2.5 需要掌握的操作

2.5.1 count

统计某一元素出现的次数

l=[111,222,111,111]

print(l.count(111))

2.5.2 sort

对列表进行排序

l = [10, -1, 3, 2, 11, 7]

l.sort()

l.sort(reverse=True)

reverse=True为反转

2.5.3 clear

清空列表

l.clear()

2.5.4 reverse

反转列表

l.reverse()

2.5.5 extend

一次添加多个值

l=[11,22,33]

l.extend([44,55,66])

2.5.6 copy

拷贝到一个新列表

l2=l1.copy()

等同于l4=l1[:]

2.6 类型总结

列表可以存放多个值

列表是有序的并且是可变类型

你可能感兴趣的:(python按索引删除字符串)