1. 把字符连成串,在python中用‘,",‘‘‘,"""引起来的内容被称为字符串
2. 索引:索引就是下标,从0开始
3. 用 [] 进行索引
strExample=‘hello world‘ print(strexample[0]) #打印了字符串的第一个字符 h print(strexample[5]) #打印了字符串的第6个字符 空格
4. 切片
a. 我们可以使用下表来截取部分字符串的内容
b. 语法:str[start:end]
c. 规则:顾头不顾尾,从start开始截取,截取到end的位置,但不包括end
strExample=‘hello,my name is joe‘ print(strExample[0:3]) #截取了字符串的第一到第三个字符,但索引为3但字符没有截取 print(strExample[5:20]) #如果超出了字符串但范围,就截取到字符串最后一个字符 print(strExample[-1:-5]) #从最后一位开始取,但是字符串只能从左往右取,所以什么都取不到 print(strExample[-5:-1]) #从倒数第五个开始往后取,取到倒数第一个,但倒数第一个取不到 print(strExample[-5:]) #从倒数第五个往后取,如此便能取到最后一个(不写结束的值,意思为直接取到最后) print(strExample[:5]) #从第一个开始取,取到第五个(不写开始的值,意思为从开始取) print(strExample[:]) #从头取到尾
d. 跳着取,存在步长的写法:
步长:如果是正数,则从左往右取,如果是负数,则从右往左取,默认是1
切片语法:str[start:end:step]
start:起始位置
end:结束位置
step:步长
strExample=‘abcdefghijklmn‘ print(strExample[1:6:2]) #从第二个数开始取到第六个数,每两个字符取一次,取这两个的左边的 print(strExample[1:6:-2]) #这样取不到数字 print(strExample[6:1,-2]) #将索引反向写,才能反向取到 print(strExample[-6::-1])#反向取到最前面 print(strExample[6::-1]) #反向取到最前面
5. 字符串是可迭代对象
s = "abcdefg" for i in s: print(i) #输出结果为:a、b、c、d、e、f、g
6. 字符串常用方法:
1) captalize、swapcase、title
str.captalize() #首字母大写
str.swapcase() #大小写翻转
str.title() #每个隔开的(被特殊字符或数字隔开)单词的首字母大写
2) upper、lower
str.upper() #全部字母大写
str.lower() #全部字母小写
3) center
str.center(长度,“用于填充的字符”)
#将给定字符串扩充到给定长度,并居中,然后用给定字符填充空白部分
4) expandtabs
str,expandtabs()
#如果字符串中有 \t 则自动将其转化为 tab键
#从 \t 到最前,如果没有八个字符,则补充到8个(8的倍数)
5) count
str.count("给定元素",数字1,数字2),也可以用在列表中
#计算字符串中的给定元素数量,可以按照数字1、数字2的位置来切片,然后统计
6) startswith、endswith
str.startswith("给定字符串",数字1,数字2) #判断字符串是否以给定字符串开头,可以切片后再判断,返回值为bool值
str.endswith("给定字符串",数字1,数字2) #判断字符串是否以给定字符串结尾,可以切片后再判断,返回值为bool值
7) find
str.find("给定元素",数字1,数字2)
#寻找字符串中是否有给定元素,可以切片后再寻找
#如果能找到,返回值是元素的索引;如果找不到,返回值是 -1
8) index
str.index("给定元素",数字1,数字2)
#寻找字符串中是否有给定元素,可切片后再寻找
#如果能找到,返回元素的索引;如果找不到,报错
9) split
str.split("给定字符")
#以给定字符分割字符串(默认为空格),得到一个list
#得到的list中不含给定用于分割的字符
str.split("给定字符",数字)
#以给定字符分割字符串,得到一个list
#只分割给定数字次字符串,当分割次数达到时,后面无论有多少可以分割的,都不继续分割
10)strip
str.strip("给定字符")
#消除字符串中的给定字符,左右都删
#输入参数可以为空,默认为空格
11) lstrip、rstrip
str.lstrip() 、 str.rstrip()
#删除字符串左边、右边的特定字符
12) format
str.format(用于输出的元素)
#按顺序填
#str中用{}占位
"{0},{1},{2},{0}".format(用于输出的元素1,用于输出的元素2,用于输出的元素3)
#在占位的{}中加上索引,可多次使用format后的元素(按索引位置引用)
"{key1},{key2},{key3},{key2},{key1}".format(key1=值1,key2=值2,key3=值3)
#按key进行索引,可以不按顺序进行排列
13) replace
str.replace(old,new,count)
#将字符串中的old元素替换为new
#默认全部都替换,可以用count控制替换次数
14) is系列
str.isalnum() #判断字符串是否由字母或数字组成,返回bool
str.isalpha() #判断字符串是否只由字母组成,返回bool
str.isdigit() #判断字符串是否只由数字组成,返回bool
15) len
len(str)
#计算字符串的长度(字符数量)
#len() 是一个公用方法,其他数据类型也能使用
原文:https://www.cnblogs.com/joetan/p/10802168.html