1.把首字母大写,返回给你一个新的字符串
capitalize()
s = "abcdefg" s1 = s.capitalize() # 把首字母变成大写, 返回给你一个新的字符串 print(s) # 字符串不可变. 原字符串是不会发生改变的 print(s1)
2.所有的字母变成大写字母(重点)
upper()
s = "alex sb dsb bigsb" s3 = s.upper() # 所有的字母变成大写字母(重点) print(s3)
3.所有字母变小写
lower()
casefold() 支持特殊文字
s = "Alex Is Not A GooD mAN" s4 = s.lower() # 有问题的. 对欧洲特殊文字是不识别的 print(s4) s = "Alex Is Not A GooD mAN" s5 = s.casefold() # 支持特殊文字 print(s5) s2 = "БBß" # 俄美德 print(s2) print(s2.lower()) print(s2.casefold())
4.大小转换:
swapcase()
小变大,大变小
s = "wusir 昨天 Love 了 女神. guo fen 了" print(s.swapcase()) # 大变小, 小变大
5.居中
center()
center() 中间. 居中 s = "alex" s6 = s.center(10, "*") # 长度, 用_填充 print(s6)
6.去掉两端的空白
strip()
s = " alex is sb " print(s) s7 = s.strip() # 去掉左右两端的空白(空格, , ), 中间的内容不会动 print(s7)
应用:
除了登陆验证外还可以去除两端的字符
uname = input("请输入你用户名:").strip() # 干掉用户的空格 upws = input("请输入你的密码:").strip() # 干掉用户的空格 if uname =="alex" and upws == "123": print("登录成功") else: print("登录失败") s = "sbalexsbwusirsb" print(s.strip("sb")) # 去掉左右两端的sb
7.字符替换:
replace()
s = " good alex good wusir good 大虾 good 胡辣汤 " s8 = s.replace("good", "sb") # 把s中的good替换成sb print(s8) s9 = s.replace(" ", "") print(s9) s10 = s.replace("good", "sb", 2) # 字符串替换2次 print(s10)
8.字符串切割
split()
s = "alex 昨天给我们涨工资了? 不可能" lst = s.split("alex") # 切出来的结果会放在列表中, 刀如果把头了. 一定会产生空字符串 print(lst)
9.格式化输出
name = "alex" age = 18 hobby = "wusir" print("领导叫%s, 今年%d, 喜欢%s" % (name, age, hobby)) print("领导叫{}, 今年{}, 喜欢{}".format(name, age, hobby)) print("领导叫{1}, 今年{0}, 喜欢{2}".format(name, age, hobby)) # 程序员数数从0开始 print("领导叫{na}, 今年{age}, 喜欢{hobby}".format(na = name, age = age, hobby = hobby)) print(f"领导叫{name}, 今年{age}, 喜欢{hobby}")
10.判断字符串是否以xxx开头或者是xxx结尾
startswith():判断字符串是否以xxx开头
endwith():判断字符串是否以xxx结尾
这里只有开头的例子,同理自己去练习以xxx结尾
s = "java_python_区块链_大数据" print(s.startswith("python")) # 判断xxx是否已xxx开头. name = input("请输入你的名字:") # 张开 致青春 if name.startswith("张"): print("领钱") else: print("不领钱")
11.计数
count()
s = "alex is big sb" print(s.count("i")) # 计数
12.查找
(1)find() 查找, 如果存在. 返回索引. 如果不存在返回-1
(2)index() 查找,如果找到了返回索引. 找不到. 报错
s = "滋滋冒油的猪蹄子" # print(s.find("牛")) # 用这个 # index() 如果找到了返回索引. 找不到. 报错 # print(s.index("牛"))
13.判断字符串的组成
(1)isalpha() 是否是由基本的文字组成. 是否是由字母组成(包括中文)
(2)是否由数字组成
isdigit() 是否由数字组成(阿拉伯数字)
isnumeric()
= "alexwusir" print(s.isalpha()) # 是否是由基本的文字组成. 是否是由字母组成(包括中文) s = "123456798一" # digit 数字 %d print(s.isdigit()) # 阿拉伯数字 s = "123456789一二三壹仟贰佰壹拾伍叁" print(s.isnumeric()) # number
14.字符串的长度
len()
s = "我叫周润发,我喜欢DNF" print(len(s)) # 字符串长度, 内置函数
15.for循环来遍历字符串
for循环来遍历字符串
for: 循环
c: 变量
in : 固定的
s: 你要遍历的内容
for c in s: # 把字符串s中的每一个元素拿到赋值给前面的c
print(c)
for循环有一个先决条件. 必须是可迭代对象.
缺点: 无法看到字符的索引.
'''
for 变量 in 可迭代对象:
循环体(break, continue)
'''
有while把每句话的每一个字符拿到。例子:
s = "风扇哥门神灯神哈哈我的天哪" # len(s) # 用while循环. 获取到每一个字符 i = 0 # 索引 while i < len(s): print(s[i]) i += 1