Python容器一之字符串

在现实生活中,我们知道容器是用来存放东西的,比如实验室里的烧杯等。
在这里插入图片描述

类似的,在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)
  • 16
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值