字符串
----------------------------------------------------------------------------------------------------------------------------------
主要内容
1.字符串介绍
2.for循环字符串使用
3.字符串切片
4.字符串的常用方法
------------------------------------------------------------------------------------------------------------------------------------
1.字符串介绍
在python代码中,字符串即是使用引号 ' ' 括起来的一堆数字、字母或其他符号组合在一起的数据。
如下行所示:
s = 'ABCDLSESRF'
注:使用函数input输入的数据也是字符串类型,即如下
1 #data是一个str类型,如需使用int,需强制转换int(data),新手尤其注意 2 data = input("请输入一个数字:")
2.for循环的字符串使用
for循环使用字符串是遍历每个字符,如:
s = 'qwertyuiop456789@#$%^&*'#定义字符串 li = [] #定义空列表存储遍历的值 for i in s: li.append(i) #值遍历值加入li列表 #打印列表 print(li) #打印li列表值结果如下:
['q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', '4', '5', '6', '7', '8', '9', '@', '#', '$', '%', '^', '&', '*']
注:for后面的对象需要是可迭代的
3.字符串切片
s = 'qwerty*'#定义字符串 #字符串索引值从0开始,s = [start:end:step] 取值规律:顾头不顾尾巴 s1 = s[:] #全取,相当于s1 = s,s1 = qwerty* s2 = s[0:] #从0去到最后,也相当于全取值,s1 = qwerty* s3 = s[:5] #取到第五个,但是不包括第五个,实际取到第四个[ )前开后闭,s3 = qwert s4 = s[2:5] #取第二个到第四个,s4 = ert s5 = s[2:] #从第二个取到结束,s5 = erty* s6 = s[:-1] #开始取到倒数第二个,即出去最后一个全取,s6 = qwerty s7 = s[1:-1:2] #第一个取到倒数第一个,不包括倒数第一个,2为步长,隔一个取一个,s7 = wry
4.字符串常用方法
字符串的方法是一个强大的功能,在使用时候,能给我们带来很多方便。如下代码所示。

1 #字符串方法 2 3 s = ' qwer12 345 @#$%^ ' 4 #字符串分割,将s字符串按1分割为列表,返一个列表,不包括分割的字符,s1 = [' qwer', '2 345 @#$%^ '], 5 s1 = s.split('1') 6 print(s1) 7 #查找索引值,在字符串中查找‘1’的值,返回索引值,下标从0开始,找不到报错,s2 = 5 8 s2 = s.index('1') 9 print(s2) 10 #也是查找索引值,在字符串中查找‘1’的值,返回索引值,下标从0开始,找不到返回-1 S3=-1 11 s3 = s.find('6') 12 print(s3) 13 14 #去除字符串左右两边的空格与回车,去掉之后本身还是一个字符串 s = qwer12 345 @#$%^。注:中间不能去除 15 s4 = s.strip() 16 #去掉右边的空格与回车去掉之后本身还是一个字符串 17 s5 = s.rstrip() 18 #去掉左边的的空格与回车去掉之后本身还是一个字符串 19 s6 = s.lstrip() 20 print(s4) 21 22 #是否是系列,返回Ture或False 23 s7 = s.isdigit() #是否是数字 24 s8 = s.isalnum() #是否是字母或数字 25 s9 = s.isalpha() #是否是字母 26 s10 = s.isupper() #是否是大写字母 27 s11 = s.islower() #是否是小写字母 28 s12 = s.isspace() #是否是空格 29 s13 = s.istitle() #是否是标题格式(每个英文首字母大写) 30 31 s14 = 'qwert'.capitalize() #字符串首字母大写,s14 = Qwert 32 s15 = s.count('i') #统计字符串中出现某个字符的次数 33 s16 = s.center(40,'*') #打印输出字符,让字符串放在中间,s16 = *********** qwer12 345 @#$%^ *********** 34 s21 = s.rjust(40,'*') #从前向后开始计算,当字符串的长度超过size时,超过部分用替换符号替代,s21 = ********************** qwer12 345 @#$%^ 35 s22 = s.ljust(40,'*') #从后向前开始计算,当字符串的长度超过size时,超过部分用替换符号替代,s22 = qwer12 345 @#$%^ ********************** 36 37 38 39 s17 = s.endswith(' ') #字符串以什么结尾,返回返回Ture或False 40 s18 = s.startswith(' ') #字符串以什么开头,返回Ture或False 41 sw = 'name:{}' 42 s19 = sw.format('yuanyuan') #在字符{}中输出指定内容,,format内字符或数字填入{}内,注意对应关系 43 #字典值传入 44 hello = "My name is {name},I am {age} years old.I like {hobby}" 45 print(hello.format_map({'name':'yanyan','age':19,'hobby':'music travel'})) 46 47 #将列表中字符通过给出的连接拼为字符串,列表中的值需要时字符串 48 li = ['q','w','e'] 49 s20 = '*'.join(li) 50 print(s20) 51 52 s23 = s.replace('qw','4321') #字符替换s23 = 4321er12 345 @#$%^ 53 s24 = s.lower() #转换为小写 54 s25 = s.upper() #转换为大写 55 sd = 'hello every in my mind' 56 s26 = sd.title() #将每个字符串的首字母转换为首字母大写,s26 = Hello Every In My Mind
5.总结
字符串的方法与使用需要平常不断的敲代码,才能更加熟练掌握,字符串在输入可以作为很多代码的判断,如需要完全输入数字时候可以使用isdigit() 这个方法,可以排除一些其他输入,增加可读性