字符串
字符串:编程语言中,用于描述数据信息的一段字符
代码中的字符串:包含在一对引号中的多个字符/三引号中的多个字符
s1 = "这是一个字符串"
s2 = '这也是一个字符串'
s3 = """
这是一个长字符串
支持换行
在某些情况下,可以当成(文档)注释使用[不赋值]
文件的开头、函数的开头、类型的开头
"""
s4 = "这是一个'特殊'的字符串,单引号和双引号可以交叉使用"
s41 = '单引号字符串中可以"直接包含"双引号'
# 转义:转变原来的含义,符号: \
# \t:将一个普通的字符t,转变成tab制表符
# \n:讲一个普通的字符n,转变成换行符
# \r:将一个普通的字符r,转换成回车符
s5 = "这又是一个\"特殊\"的字符串,双引号中就想用双引号,转义字符"
转义:转变原来的含义,符号: \
1.\t将一个普通的字符t,转变成tab制表符
- \n:讲一个普通的字符n,转变成换行符
3.\r:将一个普通的字符r,转换成回车符
字符串的拼接操作
字符串的拼接操作:
字符串可以进行运算
-
将字符串s重复10次赋值给s1
2.# 两个字符串可直接通过连接符号+拼接
字符串类型不可以和其他类型直接拼接
字符穿的特殊拼接:占位符拼接
(1)字符串占位
(2)整数占位
(3)浮点数占位
# 1. # 将字符串s重复10次赋值给s1
s = "hello"
s1 = s * 10
print(s1)
# 2.# 两个字符串可直接通过连接符号+拼接
s2 = "world"
s3 = s1 + s2
# 3. 字符串类型不可以和其他类型直接拼接
# i1 = 10
# s4 = s + i1
# print(s4) # TypeError: must be str, not int
# 4. 字符穿的特殊拼接:占位符拼接
# 字符串占位
name = input("请输入您的姓名:")
s5 = "welcome to China, my name is " + name
s6 = "welcome to china, my name is %s" % name
s7 = "hello my name is %s, %s years old!" % (name, 18)
# 整数占位
s9 = "this goods%% is ¥%d" % 100
print(s9)
# 浮点数占位
s10 = "圆周率是%.10f" % 13.1415926
print(s10)
字符串函数
字符串函数:python系统内置的对字符串的各种操作的支持
['capitalize', 'casefold',
'center', 'count', 'encode', 'endswith',
'expandtabs', 'find', 'format', 'format_map',
'index', 'isalnum', 'isalpha', 'isdecimal',
'isdigit', 'isidentifier', 'islower',
'isnumeric', 'isprintable', 'isspace',
'istitle', 'isupper', 'join', 'ljust',
'lower', 'lstrip', 'maketrans', 'partition',
'replace', 'rfind', 'rindex', 'rjust',
'rpartition', 'rsplit', 'rstrip', 'split',
'splitlines', 'startswith', 'strip', 'swapcase',
'title', 'translate', 'upper', 'zfill']
# capitalize首字母大写 upper大写 lower小写 capitalize 首字母大写 upper 大写 lower小写 istitle是否首字母大写
# istitle是否首字母大写 isupper是否大写 islower是否小写
# s1 = "Hello"
# s2 = "jerry"
# s3 = "SHUKE"
#
# print(s1.capitalize(), s1.upper(), s1.lower())
# print(s1, s1.istitle(), s1.isupper(), s1.islower())
# print(s2, s2.istitle(), s2.isupper(), s2.islower())
# print(s3, s3.istitle(), s3.isupper(), s3.islower())
# 对齐方式和剔除空格
s = "hello"
s.center(10) # s在操作的时候,占用10个字符,居中对其
s.center(11, '-') # s在操作的时候,占用11个字符,居中对其,空白的位置使用指定的字符补齐
s.ljust(10) # s占用10个字符,左对齐
s.rjust(10) # s占用10个字符,右对齐
# s.lstrip() # 删除字符串s左边的空格 #s.lstrip()
# #s.rstrip() s.strip()
# s.rstrip() # 删除字符串s右边的空格
# s.strip() # 删除字符串s两边的空格
#
# # 字符串的查询/匹配操作
# # find / rfind
# # index / rindex
# s = "hello"
# x = s.find("lo") # 查询指定的字符串出现的位置;如果没有查询到返回-1
# x2 = s.index("lo")# 查询指定的字符串出现的位置;如果没有查询到直接Error
#
# s.startswith("he") # 判断s是否是"he"开头的字符串吧,返回True/False
# s.endswith("lo") # 判断s是否是"lo"结尾的字符串,返回True/False
#
# # 字符串的拆分
# img = "https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=2913582182,143676263&fm=27&gp=0.jpg"
#
# # 拆分字符串
# print(img.rpartition("/")[-1])
# print(img.split("/")[-1])
#
#
# # 字符串的替换[查询->替换]
# content = "发表一TMD片文章:文TMD章内容中TMD今天真热"
# print(content)
# content = content.replace("TMD", "***")
# print(content)