持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第1天
一、字符串介绍
最常用的数据类型,字符序列、不可变(数值、字符串、元组)。
由连续字符组成的不可变的有序序列。是计算机所能表示的一切字符的集合。
容器、序列、迭代对象(for)
在Python中,字符串属于不可变序列,通常使用一对单引号“' '”、双引号“" "”或三引号“''' '''”、“""" """”括起来。其中,单引号和双引号中的字符串必须在同一行上,三引号内的字符串可以在连续的多行上。
成对匹配出现,不能交叉。
使用单引号和双引号括起来的字符串没有任何区别。如果字符串中有单引号,则使用双引号将字符串括起来。同样,如果字符串中有双引号,则使用单引号将字符串括起来。
注意:没有字符这个类型
如何证明字符串不可变,修改就是再创建了一个空间
aa= 你好
print(aa)
print(aa)
aa[1]= 我
print(aa)
aa= 你好
print(aa)
print(aa[1])
aa= "我美
print(aa)
aa= 你好
print(id(aa))
aa=我美
print(id(aa))
内存地址不一样:
二、访问字符串中的值:索引和切片
1、索引
字符串被索引(下标访问)时,第一个字符索引是0。 索引也可用负数,从右边开始数。因为-0和0相同,所以负数索引从-1开始。Python字符串直接在方括号([])中使用索引即可获取对应的字符。
字符串 s1 = 's t u d y'
从前面索引 0 1 2 3 4
从后面索引 -5 -4 -3 -2 -1
s1[0] = 's' s1[2] = 'u' s1[4] = 'y'
s1[-5] = 's' s1[-3] = 'u' s1[-1] = 'y'
索引超出范围会出错: IndexError: string index out of range****
2、切片
除了索引,字符串还支持切片。索引可以得到单个字符,而切片可以获取子字符串。Python访问子字符串,可以使用方括号[]来截取字符串。
字符串的截取语法格式如下:变量[start : end : step]
对各个部分的说明:
1) start:表示要截取的第一个字符所在的索引(截取时包含该字符)。如果不指定,默认为 0,也就是从字符串的开头截取;
2) end:表示要截取的最后一个字符所在的索引(截取时不包含该字符)。如果不指定,默认为字符串的长度;
3) step:指的是从 start 索引处的字符开始,每 step 个距离获取一个字符,直至 end 索引出的字符。step 默认值为 1,当省略该值时,最后一个冒号也可以省略。
注意,切片的开始索引被包含在结果中,而结束索引不包含。左闭右开。切片超出范围不出错。例如:
str1 = 'python'
str1[2:5] = 'tho' str1[0:2] = 'py'
三、拼接字符串
在Python中拼接(连接)字符串很简单,我们介绍两种方法:
1.直接将字符串紧挨着写在一起
注意,这种方法只能拼接字符串。代码示例:
str_1 = "我骄傲!""我是中国人!"
print(str_1)
结果:我骄傲!我是中国人!
2.使用“+”运算符拼接
代码示例:
str_2 = **"我的祖国" + str(72) + "岁啦!"
print(str_2)
代码中,使用str()函数将整数转换为字符串。运行结果:我的祖国72岁啦!
四、字符串乘运算
乘运算:重复N遍
print(“=”*30)