文章目录
在现实生活中,我们知道容器是用来存放东西的,比如实验室里的烧杯等。
类似的,在Python中的容器是用来存放数据的。
1. Python中常见的容器
在Python中,常见容器有:
- 字符串:str
- 列表:list
- 元组:tuple
- 字典:dict
那么,这些容器的表示形式是什么呢?
(1)字符串
:使用双引号
引起来的内容。
(2)列表
:使用[ ]
表示的内容。
(3)元组
:使用( )
表示的内容。
(4)字典
:使用{ }
表示,内部元素是键值对。
注意:当要查看某数据的类型时,使用type(x)
2.字符串介绍
2.1 创建字符串
- 创建字符串的语法
变量名=“内容”
str="hello"
注意:
在实际应用中,创建字符串可以使用:单引号
、双引号
或三引号
,但优先使用双引号。
2.2 字符串的遍历
2.2.1 使用for循环遍历字符串
for循环的语法:
for 临时变量 in 序列:
满足条件时,执行的代码1
满足条件时,执行的代码2
......
[else:
当for循环正常执行结束后,执行代码]
实例:
(1)定义一个字符串变量,内容为:hello;
(2)使用for循环来遍历元素;
(3)执行程序,观察效果。
# 1.定义字符串
strs = "hello"
# 2.使用for遍历
for str in strs:
print(str)
# 3.扩展 -else
for str in strs:
print(str)
else:
print("所有字符串元素已遍历结束!!")
2.2.2 使用while遍历字符串
while循环的语法:
初始化变量语句
while 循环条件:
循环体语句
改变循环条件的语句 # 先写
获取元素值的语法:
变量名[索引值]
获取长度
函数名 | 含义 |
---|---|
len(s) | 返回变量s的长度或元素个数 |
实例: | |
(1)定义一个字符串变量,内容为:hello; |
(2)使用while循环来遍历元素;
(3)执行程序,观察效果。
# 1.定义字符串变量
strs = "hello"
# 2.写循环
i = 0
# while i < len(strs):
while i <= (len(strs)-1):
# 3.访问元素
print(strs[i])
i += 1
# 思考:从后往前输出??
strs = "hello"
i = len(strs) - 1
while i >= 0:
print(strs[i])
i -= 1
2.3 常用操作方法
2.3.1 查找元素
字符串的查找方法指的是查找元素
(或子串
)在字符串内容的索引位置。
查找方法有:
函数名 | 含义 |
---|---|
find(sub) | 检测sub是否包含在字符串中,如果是,则返回sub所在开始的索引,否则返回-1。 |
index(sub) | 与find()类似,只不过当sub在字符串中不存在时,会报错误。 |
rfind(sub) | 从右往左找子串在字符串的某个索引。 |
count(sub) | 计算sub在字符串中出现的总次数。 |
实例:
(1)定义一个字符串变量,内容为:hello world and Python;
(2)分别使用find()和index()函数来查看and所在位置;
(3)思考1:如果查找不存在的内容666,效果如何?
(4)思考2:若要从右往左查找and,该怎么做?若还要获取and出现的总次数呢?
# 1.定义字符串
name = "hello world and itcast and Python"
# 2.and -find() index()
print(name.find("and"))
print(name.index("and"))
# 3.对比find index
print(name.find("666")) # 稳定
print(name.index("666")) # 报错
# 4.从右往左 right
print(name.rfind("and"))
print(name.rindex("and"))
# 总次数
print(name.count("and"))
注意:
当要查找字符串的某元素时,可以使用find()、index()。实际应用中,优先使用(find())方法查找字符串元素,因为这个方法更稳定。
2.3.2 修改元素
字符串的修改方法,指的是修改字符串中的数据。
函数名 | 含义 |
---|---|
replace(old,new) | 用于将字符串中的old内容替换成new内容 |
split(sep) | 使用指定内容sep来对字符串进行切割 |
strip() | 用于去掉字符串前后的空白内容 |
实例:
(1)定义一个字符串变量,内容有: hello python big data ;
(2)将变量中的空格替换为666;
(3)使用空格、字符a来分别分割字符串;
(4)去掉字符串的前后空白内容。
# 1.定义字符串
strs = "hello python big data"
# 2.替换
ret1 = strs.replace(" ","666")
print(ret1) #" " -暂无数据
# 3.分割 -切割
ret2 = strs.split("a")
print(ret2)
# 4.去掉空白
strs = " hello itheima big data "
print(strs.strip())
result1 = strs.lstrip()
result2 = result1.rstrip()
print(result2)