所有的关于字符串的相关方法看一下
菜鸟教程 - python字符串(网址) https://www.runoob.com/python3/python3-string.html
1、center rjust,ljust,zfill
“”
字符串.center(长度 填充字符) 例如 ‘abc’.center(7,‘x’)- ‘xxabcxx’
字符串.rjust(长度 填充字符) 例如 ‘abc’.rjust(7,‘x’)- ‘xxxxabc’
字符串.ljust(长度 填充字符) 例如 ‘abc’.ljust(7,‘x’)- ‘abcxxxx’
字符串.zfill(长度) 字符串.rjust(长度 ‘0’),例如 ‘abc’.zfill(7)- ‘0000abc’
“”
print( abc .center(7, x )) # xxabcxx print( abc .zfill(7)) # 0000abc
2.count
“”
字符串1.count(字符串2) - 统计字符串1中字符串2出现的次数
字符串1.count(字符串2,开始下标 结束下标) - 在开始下标到结束下标 取不到 对应的范围内容统计字符串2出现的次数
“”
str1 how are you? i am fine, thank you. and you? print(str1.count( a )) # 4 print(str1.count( you )) # 3 print(str1.count( a , 0, 12)) # 1 print(str1.count( u , 0, 10)) # 0
3.find,index
“”
字符串1.find(字符串2) - 获取字符串1中字符串2第一次出现的位置 返回0开始的下标值;如果字符串2不存在 返回-1
字符串1.index(字符串2) - 获取字符串1中字符串2第一次出现的位置 返回0开始的下标值 如果字符串2不存在 报错
字符串1.find(字符串2,开始下标 结束下标) 字符串1.index(字符串2,开始下标 结束下标)
“”
str1 how are you? i am fine, thank you. and you? print(str1.find( you )) # 8 print(str1.index( you )) # 8 print(str1.find( you1 )) # -1 # print(str1.index( you1 )) # 报错 print(str1.find( you , 0, 8)) # -1
4.isdigit,isnumeric
“”
字符串.isdigit() - 判断是否是纯数字字符串 数字指0~9的数字字符
字符串.isnumeric() - 判断是否是纯数字字符串 单个数字指具有数字意义的字符
“”
print( 123456 .isdigit()) # True print( 2323 .isnumeric()) # True print( one2323一二三 .isnumeric()) # False print( 2323一二三 .isnumeric()) # True print( 2323一Ⅴ .isnumeric()) # True
*5.islower,isupper
“”
字符串1.islower() - 判断字符串是否是纯小写字母字符串
字符.islower() - 判断是否是小写字母
字符串1.isupper() - 判断字符串是否是纯大写字母字符串
字符.isupper() - 判断是否是大写字母
“”
print( abcs .islower()) # True print( ABCS .isupper()) # True
**6.join
“”
字符串.join(序列) - 将序列中的元素用指定的字符串拼接成一个新的字符串
注意 序列中的元素必须是字符串
“”
result .join( abc ) # a b c
result and .join( abc )
print(result) # aandbandc
result .join([ 小明 , 张三 ]) # 小明 张三
result .join([ 小明 , 张三 ])
print(result) # 小明张三
s1 { a , 1 } # 集合去重后连接在一起
result .join(s1)
print(result) # a1
# **练习 将下面列表中的元素合并成一个字符串(有问题)【推导式 join】【推导式很重要】
# [ abc , 100, 12.5, True, hello ] - abc10012.5Truehello
list1 [ abc , 100, 12.5, True, hello ]
result .join(str(x) for x in list1)
print(result)
# **练习2 已经一个列表保存多个学生的分数 提取所有学生的姓名 以一个字符串的形式返回 有问题 【推导式 join】
# [{ name : 张三 , age : 18}, { name : 小明 , age : 20}, { name : 小花 , age : 30}] - 张三,小明,小花
students [
{ name : 张三 , age : 18},
{ name : 小明 , age : 20},
{ name : 小花 , age : 30}
result , .join(x[ name ] for x in students)
print(result)
7.strip, lstrip, rstrip
“”
字符串.strip() - 去掉字符串两端的空白字符
字符串.lstrip() - 去掉字符串前面的空白
字符串.rstrip() - 去掉字符串后面的空白
“”
str1 tabc 123 n result str1.strip() print( , result, , sep ) # abc 123 result str1.lstrip() print( , result, , sep ) # abc 123 result str1.rsplit() print( , result, , sep ) # [ abc , 123 ]
8.replace
“”
字符串1.replace(字符串2 字符串3) - 将字符串1中所有的字符串2替换成字符串3
字符串1.replace(字符串2 字符串3, N) - 替换前N个
“”
str1 how are you? i am fine, thank you. and you? result str1.replace( you , me ) print(result) # how are me? i am fine, thank me. and me? result str1.replace( you , me , 2) # 替换前2个 print(result) # how are me? i am fine, thank me. and you?
9.maketrans,translate
“”
str.maketrans 字符串1 字符串2 - 创建一张字符串1和字符串2的字符对应表
字符串.translate 表
“”
举例说明ege: table str.maketrans( ain , 你我他 ) # a- 你 i- 我 n- 他 str1 how are you? i am fine, thank you. and you? result str1.translate(table) print(result) # 练习 将字符串中所有的阿拉伯数字都替换成对应的中文数字 # 123木头人 88 - 一二三木头人 八八 table str.maketrans( 0123456789 , 零一二三四五六七八九 ) # 替换所有 str1 123木头人 88 # result 123木头人 88 .translate(table) result str1.translate(table) print(result) # 一二三木头人 八八 # 10.rfind,rindex 从后往前找 str1 how are you? i am fine, thank you. and you? print(str1.find( you )) #8 从前往后找 print(str1.rfind( you )) #39 从后往前找
11.split
“”
字符串1.split(字符串2) - 将字符串1中所有的字符串2作为切割点对字符串进行切割
“”
str1 how are you? i am fine, thank you. and you? result str1.split( you ) print(result) # [ how are , ? i am fine, thank , . and , ? ] # 注意 如果切割点在最前面或者最后面或者出现连续的切割点 结果会出现空串 str2 mnayoua a123aklp print(str2.split( a )) # [ mn , you , , 123 , klp ] str2 mnayouaa a123aklp print(str2.split( a )) # [ mn , you , , , 123 , klp ]5、函数的价值
nums [29, 10, 12, 18, 23] print(max(nums))6、认识函数和定义函数
1.认识函数
“”
系统函数 系统造好的机器 - 由Python创建好的函数 例如 print,input,type,max,min,id等
自定义函数 自己造机器 - 由程序员自己创建的函数
“”
def func():
print(’ ’)
print(’ ’)
print(’------’)
func()
func()
func()
2.定义和函数 创建函数
“”
语法
def 函数名(形参列表):
函数说明文档
函数体
说明
a.def - 关键字 固定写法
b.函数名 - 由程序员自己命名
要求 是标识符 不能是关键字
规范 见名知义 看到函数名大概知道这个函数的功能是什么
所有的字母都小写 多个单词之间用下划线隔开
不使用系统的函数名 类名和模块名
c. () - 固定写法
d.形参列表 - 以’变量名1 变量名2 变量名3 。。。‘格式存在。
这儿的每一个变量就是一个形参 如果不需要形参 括号里什么都不用写
形参是用来将函数外部的数据传递到函数内部。 可以理解成连接函数外部和内部的通道
需不需要形参就看实现函数的功能需不需要额外的数据
e. : - 固定写法
f. 函数说明文档 - 本质就是文档注释’’’’’’,
g. 函数体 - 和def保持一个缩进的一条或者多条语句
函数体就是实现函数功能的代码
“”
# 练习1 定义一个函数 求任意两个数的和 def sum2(num1, num2): print(num1 num2) # 练习2 定义一个函数 求N的阶乘 # N! 1*2*3*...*N def factorial(n): result 1 for x in range(1, n 1): result * x print(result)



