4.3Python数据类型(3)之字符串类型

时间:2023-03-09 02:36:59
4.3Python数据类型(3)之字符串类型

返回总目录

目录:

1.字符串的概念

2.字符串的形式

3.字符串的转义符

4.字符串一般操作

5.字符串函数操作

(一)字符串的概念

由单个字符组成的一个集合

(二)字符串的形式

双引号与单引号的效果一样:

(1)使用单引号包含的

'abc'

(2)使用双引号包含的

"abc"

(3)使用3个单引号

''' abc '''

(4)使用3个双引号

""" abc """

# 字符串与注释
str1 = '单引号'
str2 = "双引号"
str3 = '''三个单引号'''
str4 = """三个双引号"""
print(str1)
print(str2)
print(str3)
print(str4)
'单引号也可以注释'
"双引号也可以注释"
'''三个单引号也可以注释'''
"""三个双引号也可以注释"""
-----------------输出-----------------
单引号
双引号
三个单引号
三个双引号

规律:其实不管是单引号还是双引号,还是三个单引号,还是三个双引号,他们都可以来处理字符串,而他们注释的原理的本质上就是没有把字符串赋值给变量,所以也没有什么用,就相当于注释了。

(三)字符串的转义符

(1)转义字符

通过转换某个指定的字符, 使它具备特殊的含义

\(在行尾时) 续行符

\' 单引号

\" 双引号

\n 换行

\t 横向制表符

# 转义字符
name = "s" \
"Z123"
print(name) # \续行符
print("12345645\\n") # \\-->\
print("单引号\'") # \'-->'
print("双引号\"") # \"-->"
-------------------输出--------------------------
sZ123
12345645\n
单引号'
双引号"

(2)取消转义字符

想要使转义字符不起作用时,可以在字符串前夹r

例如:使用单引号包含的

r'abc'

使用双引号包含的

r"abc"

使用3个单引号

r''' abc '''

使用3个双引号

r""" abc """

# 取消转义字符
print(r"12345645\\n") # \\-->没有效果
print(r"单引号\'") # \'-->没有效果
print(r"双引号\"") # \"-->没有效果
----------------输出--------------------
12345645\\n
单引号\'
双引号\"

(3)字符串的跨行书写:

(1)用\连接符

(2)用圆括号

(3)用三个单引号或者三个双引号

# 字符串的跨行书写:
str1 = "dfdf" \
"dfdf" # 用\连接符
str2 = ("fdjfjd"
"kfjdk") # 用圆括号
str3 = """dfdfdf
sfdfdfdg
""" # 用三个单引号或者三个双引号
print("用\连接符:", str1)
print("用圆括号:", str2)
print("用三个单引号或者三个双引号:", str3)
--------------输出--------------------
用\连接符: dfdfdfdf
用圆括号: fdjfjdkfjdk
用三个单引号或者三个双引号: dfdfdf
sfdfdfdg

(四)字符串一般操作

(1)字符串的拼接:

1.+ 号连接

2.无符号单行连接

3.格式化连接

4.倍数连接

# 字符的连接
print("+ 号连接", "xxxxx" + "yyyyyy")
print("无符号单行连接", "xxxxxx""yyyyyy")
print("格式化连接", "xxxx%s"%("yyyyyyyy"))
print("倍数连接", "xxxxx" * 3)
---------------------输出---------------
+ 号连接 xxxxxyyyyyy
无符号单行连接 xxxxxxyyyyyy
格式化连接 xxxxyyyyyyyy
倍数连接 xxxxxxxxxxxxxxx

(2)字符串的切片:

1.单个字符的切片:string[下标]

2.字符片段的切片:string[ 起始下标 : 结束下标 : 步长 ]

注:字符片段不包括结束字符,步长是用于跳着选择字符。

冒号左右两边没有数值时,默认分别对应是0,-1,1

# 字符的切片:
name = "社会我俊哥,人狠话不多"
# 字符串的索引是从0开始
print("name[0]", name[0]) # 第1个字符
print("name[1:4]", name[1:4]) # 第2字符到第4个字符,不包括第5个字符
print("name[::2]", name[::2]) # 步长为2的,跳字符。
print("name[-1]", name[-1]) # 倒数第1个字符
print("name[:5]", name[:5]) # 第1个字符到第6个
print("name[5:]", name[5:]) # 第6个字符到结束
print("name[:]", name[:]) # 全部字符
print("name[3:-3]", name[3:-3]) # 第4个字符到倒数第3个
print("name[::-1]", name[::-1]) # 字符倒序,反转字符串
---------------------输出----------------------------
name[0] 社
name[1:4] 会我俊
name[::2] 社我哥人话多
name[-1] 多
name[:5] 社会我俊哥
name[5:] ,人狠话不多
name[:] 社会我俊哥,人狠话不多
name[3:-3] 俊哥,人狠
name[::-1] 多不话狠人,哥俊我会社

本小节结束!

返回总目录

我是张一根,一个机械专业的大学生,一个在读本科的计算机爱好者,期盼和你一起交流计算机的知识,让我们在这个大时代里一起进步。