字符串的声明:
1 mystr = 'Hello world' 2 3 mystr = "Hello world" 4 5 ''' 6 小结: 双引号或者单引号中的数据,就是字符串 7 '''
字符串的输出:
1 name = 'FuChongjun' 2 position = 'programmer' 3 address='Beijing' 4 5 print('------------------------------') 6 print('第一种输出方式') 7 print('姓名:'+name) 8 print('职位:'+position) 9 print('地址:'+address) 10 print('------------------------------') 11 12 print('第二种输出方式') 13 print('姓名:%s'%name) 14 print('职位:%s'%position) 15 print('地址:%s'%address) 16 print('------------------------------') 17 18 print('第三种输出方式') 19 print('姓名:{}'.format(name)) 20 print('职位:{}'.format(position)) 21 print('地址:{}'.format(address)) 22 print('------------------------------') 23 24 print('第四种输出方式') 25 print('姓名:{name}'.format(name=name)) 26 print('职位:{position}'.format(position=position)) 27 print('地址:{address}'.format(address=address)) 28 print('------------------------------') 29 30 结果: 31 ------------------------------ 32 第一种输出方式 33 姓名:FuChongjun 34 职位:programmer 35 地址:Beijing 36 ------------------------------ 37 第二种输出方式 38 姓名:FuChongjun 39 职位:programmer 40 地址:Beijing 41 ------------------------------ 42 第三种输出方式 43 姓名:FuChongjun 44 职位:programmer 45 地址:Beijing 46 ------------------------------ 47 第四种输出方式 48 姓名:FuChongjun 49 职位:programmer 50 地址:Beijing 51 ------------------------------
字符串的输入:
username = input('请输入用户名:\n').strip() password = input('请输入密码:\n').strip() print('-----------------------') print('用户名:{}\n密码:{}'.format(username,password)) print('-----------------------') 结果: ----------------------- 用户名:pisa 密码:123 -----------------------
下标和切片:
切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。
1 ''' 2 切片的语法:[起始:结束:步长] 3 选取的区间为左闭右开区间 [a,b) 4 ''' 5 name = 'abcdf' 6 7 print(name[0:3]) #取出从索引为0到索引为3,但不包括3.结果abc 8 9 print(name[0:-1]) #取出从索引0开始到索引倒数第一个为止,但是不包含倒数第一个.结果:abcd 10 11 print(name[0:3:2])#取出从索引0开始,每隔一个取一个,到索引为3结束,不包括索引3 结果:ac 12 13 print(name[0:-1:2])#取出从索引0开始,每隔1个取一个,到倒数第一个结束,不包括倒数第一个。结果:ac 14 15 print(name[3:1:-1])#取出从索引1开始,不包括1,到索引为3结束,包括索引3,并从右到左返回。结果:dc 16 17 print(name[::-1]) #字符串反转
字符串常用的方法:
1 mystr = 'hello world' 2 3 ''' 4 str.find(str, beg=0, end=len(string)) 5 str -- 指定检索的字符串 6 beg -- 开始索引,默认为0。 7 end -- 结束索引,默认为字符串的长度。 8 如果包含子字符串返回开始的索引值,否则返回 -1 9 ''' 10 print(mystr.find('d')) # 10 11 12 13 ''' 14 查询 d 在 mystr中的第几个为止 15 str.index(str, beg=0, end=len(string)) 16 17 str -- 指定检索的字符串 18 beg -- 开始索引,默认为0。 19 end -- 结束索引,默认为字符串的长度。 20 如果包含子字符串返回开始的索引值,否则抛出异常。 21 ''' 22 try: 23 print(mystr.index('z')) 24 except: 25 print('z不在mystr中') #这是结果 26 27 ''' 28 查询 a 在 mystr中出现多少次 29 str.count(sub, start= 0,end=len(string)) 30 sub -- 搜索的子字符串 31 start -- 字符串开始搜索的位置。默认为第一个字符,第一个字符索引值为0。 32 end -- 字符串中结束搜索的位置。字符中第一个字符的索引为 0。默认为字符串的最后一个位置 33 ''' 34 print(mystr.count('a')) #0 35 36 ''' 37 把 mystr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次 38 str.replace(old, new[, max]) 39 old -- 将被替换的子字符串。 40 new -- 新字符串,用于替换old子字符串。 41 max -- 可选字符串, 替换不超过 max 次 42 返回字符串中的 old(旧字符串) 替换成 new(新字符串)后生成的新字符串,如果指定第三个参数max,则替换不超过 max 次。 43 ''' 44 print(mystr.replace('o','a',2)) # hella warld 45 46 ''' 47 Python split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则仅分隔 num 个子字符串 48 str.split(str="", num=string.count(str)). 49 str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。 50 num -- 分割次数。 51 返回分割后的字符串列表。 52 ''' 53 str = "Line1-abcdef \nLine2-abc \nLine4-abcd"; 54 print(str.split( )); #['Line1-abcdef', 'Line2-abc', 'Line4-abcd'] 55 print(str.split(' ', 1 ));#['Line1-abcdef', '\nLine2-abc \nLine4-abcd'] 56 57 ''' 58 capitalize 把字符串的第一个字符大写 59 ''' 60 print(mystr.capitalize()) # Hello world 61 62 ''' 63 title 把字符串的每个单词首字母大写 64 ''' 65 print(mystr.title()) # Hello World 66 67 ''' 68 startswith 检查字符串是否是以 obj 开头, 是则返回 True,否则返回 False 69 ''' 70 print(mystr.startswith('a')) #False 71 72 ''' 73 endswith 检查字符串是否以obj结束,如果是返回True,否则返回 False. 74 ''' 75 print(mystr.endswith('d')) #True 76 77 ''' 78 lower 转换 mystr 中所有大写字符为小写 79 ''' 80 print(mystr.lower()) #hello world 81 82 ''' 83 upper 转换 mystr 中的小写字母为大写 84 ''' 85 print(mystr.upper()) #HELLO WORLD 86 87 ''' 88 ljust 返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串 89 ''' 90 print(mystr.ljust(20)) # hello world 91 92 ''' 93 rjust 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串 94 ''' 95 print(mystr.rjust(20)) # hello world 96 97 ''' 98 center 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串 99 ''' 100 print(mystr.center(20)) # hello world 101 102 ''' 103 rstrip 删除 mystr 字符串末尾的空白字符 104 ''' 105 print(mystr.rstrip()) #hello world 106 107 ''' 108 lstrip 删除 mystr 左边的空白字符 109 ''' 110 print(mystr.lstrip()) #hello world 111 112 ''' 113 strip 删除 mystr 字符串末尾的空白字符 114 ''' 115 print(mystr.strip()) #hello world