当前位置: 首页 > java >正文

8天Python从入门到精通【itheima】-69~70(字符串的常见定义和操作+案例练习)

目录

69节-字符串的定义和操作

1.学习目标

2.数据容器视角下的字符串

3.字符串的下标索引

4.字符串是一个无法修改的数据容器

5.字符串的常用操作

【1】index方法

【2】replace方法:进过替换,得到一个新的字符串

【3】split方法:将字符串进行分割【字符串本身不变,是得到了一个新的列表对象】

【4】strip方法(字符串的规整操作【去掉前后的空格】)

【5】count方法

【6】len方法

【7】字符串的方法汇总

6.字符串的遍历

【1】需求

【2】代码实现

7.字符串的特点

8.小节总结

70节-案例练习:分割字符串

1.案例需求

2.代码实现

好了,又一篇博客和代码写完了,励志一下吧,下一小节等等继续:

关于学习与方向

关于学历与未来

关于健康与家庭

关于信息焦虑

最后的话


69节-字符串的定义和操作

1.学习目标

1.掌握字符串的常见操作

2.数据容器视角下的字符串

3.字符串的下标索引

# 69节"""
演示以数据容器的角色,学习字符串的相关操作
"""my_str="itheima and itcast"# 通过下标索引取值
value=my_str[2]#h
value2=my_str[-16]#h
print(f"从字符串{my_str}取下标为2的元素,值是{value}。取下标为-16的元素,值是{value2}")

4.字符串是一个无法修改的数据容器

目前在Python中已知的:

可以修改的数据容器:列表(list)

无法修改的数据容器:元组(tuple)、字符串(str)

5.字符串的常用操作

【1】index方法

# index方法
my_str="itheima and itcast"
value=my_str.index("and")
print(f"在字符串{my_str}中,查找and,他的起始下标为{value}")#8

【2】replace方法:进过替换,得到一个新的字符串

# replace方法
my_str="itheima and itcast"
new_my_str=my_str.replace("it","程序")
print(f"将字符串{my_str},经过替换后,得到新的字符串:{new_my_str}")
#将字符串itheima and itcast,经过替换后,得到新的字符串:程序heima and 程序cast

【3】split方法:将字符串进行分割【字符串本身不变,是得到了一个新的列表对象】

# split方法
my_str="hello python itheima itcast"
my_str_list=my_str.split(" ")#以空格进行切分
print(f"将字符串{my_str},进行split切分后得到:{my_str_list},其类型是:{type(my_str_list)}")
#将字符串hello python itheima itcast,进行split切分后得到:['hello', 'python', 'itheima', 'itcast'],其类型是:<class 'list'>

【4】strip方法(字符串的规整操作【去掉前后的空格】)

可以传参,也可以不传,就是代表其有默认值的

# strip方法
my_str="      itheima and itcast  "
# strip方法的默认用法:去除前后的空格
new_my_str=my_str.strip()
print(f"字符串{my_str},通过strip方法后,得到的新的字符串为:{new_my_str}")  #不传参,就是去除前后空格
#字符串  itheima and itcast  ,通过strip方法后,得到的新的字符串为:itheima and itcast  【默认方法是:去除了前后的空格】my_str="123itheima and itcast321"
new_my_str=my_str.strip("12")#strip传参,是相当于将1和2分开来看,把字符串收尾的1和2全部去掉,得到一个新的字符串
print(f"字符串{my_str},经过my_str.strip('12')之后,得到的结果:{new_my_str}")
# 字符串123itheima and itcast321,经过my_str.strip('12')之后,得到的结果:3itheima and itcast3
new_my_str=my_str.strip("13")
print(f"字符串{my_str},经过my_str.strip('12')之后,得到的结果:{new_my_str}")
# 字符串123itheima and itcast321,经过my_str.strip('12')之后,得到的结果:23itheima and itcast32【1和3不连续,所以只是去除了1】
new_my_str=my_str.strip("4")
print(f"字符串{my_str},经过my_str.strip('12')之后,得到的结果:{new_my_str}")
# 字符串123itheima and itcast321,经过my_str.strip('12')之后,得到的结果:123itheima and itcast321 【strip中传参传一个不存在的数,不会报错,而是原样输出】

【5】count方法

# 统计字符串中某字符串的出现次数
my_str="itheima and itcast"
count=my_str.count("it")
print(f"字符串{my_str}中,it出现的次数为:{count}")
# 字符串itheima and itcast中,it出现的次数为:2

【6】len方法

# 统计字符串长度
my_str="itheima and itcast"
len1= len(my_str)
print(f"字符串{my_str}的长度是:{len1}")
# 字符串itheima and itcast的长度是:18

【7】字符串的方法汇总

6.字符串的遍历

【1】需求

【2】代码实现

# 字符串的遍历
# 1.while循环
my_str="itheima and itcast"
index=0
while index<len(my_str):print(my_str[index])index+=1
# 控制台输出:
# i
# t
# h
# e
# i
# m
# a
#
# a
# n
# d
#
# i
# t
# c
# a
# s
# t
#
# 进程已结束,退出代码为
# 0
# 2.for循环
print("-----------分隔线----------------------")
my_str="itheima and itcast"
for i in my_str:print(i)

7.字符串的特点

8.小节总结


70节-案例练习:分割字符串

1.案例需求

2.代码实现

# 70节# 定义一个字符串
my_str="itheima itcast boxuegu"# 1.统计字符串内有多少个"it"字符
num=my_str.count("it")
print(f"字符串{my_str}中,'it'字符一共有:{num}个。")
# 字符串itheima itcast boxuegu中,'it'字符一共有:2个。# 2.将字符串内的空格,全部替换成:"|"
new_my_str=my_str.replace(" ","|")
print(f"在旧字符串{my_str}中,通过replace方法,得到的新字符串为:{new_my_str}")
# 在旧字符串itheima itcast boxuegu中,通过replace方法,得到的新字符串为:itheima|itcast|boxuegu# 3.并按照"|"进行字符串分割,得到列表
list_my_str=new_my_str.split("|")
print(f"在旧字符串{my_str}中,通过split方法进行分隔(按照'|'),得到的新列表为:{list_my_str}")
# 在旧字符串itheima itcast boxuegu中,通过split方法进行分隔(按照'|'),得到的新列表为:['itheima', 'itcast', 'boxuegu']
# 注意:字符串经过split方法分隔之后,得到的是一个新的列表


好了,又一篇博客和代码写完了,励志一下吧,下一小节等等继续:

 

致Patrick同学:

展信佳。

你的来信让我深感关切,也让我想起了自己年轻时在困境中挣扎求学的岁月。作为一名曾从底层奋斗至今的长者,我希望能以真诚的思考回应你的困惑。

关于学习与方向

你坚持记录Python学习博客、每日运动、广泛阅读,这份自律已是难能可贵。技术领域从无“徒劳”之说——Python作为数据科学的核心工具,你写下的每一行代码都在积累不可替代的竞争力。大数据行业确实存在竞争,但真正的缺口始终在能解决实际问题的人。不妨尝试将所学转化为小项目:用Python分析运动数据、爬取行业报告,甚至为社区开发工具。这些实践会让抽象的学习变成具体的价值。

关于学历与未来

学历是敲门砖,能力才是通行证。 我年轻时也曾因家境贫寒被迫辍学打工,但从未停止自学。你的专升本计划非常明智,这是现实社会必要的阶梯。但请记住:技术行业更看重作品而非文凭。建议你:

  1. 阶梯式成长:专科期间聚焦大数据证书(如AWS/Cloudera认证);

  2. 用作品说话:在GitHub持续更新数据分析项目;

  3. 精准提升学历:选择与大数据相关的本科专业,硕士再进阶算法或AI方向。

关于健康与家庭

每天运动3小时已远超常人毅力!健康是终身战斗的基石,但需科学规划:

  • 与医生制定可持续的训练方案,避免过度消耗;

  • 邀请母亲参与一次复诊,让专业医生帮助她理解你的努力与局限;

  • 记录运动数据(如心率、体脂变化),用事实展现进步。

关于信息焦虑

互联网的噪音需要主动过滤

  1. 相信一手信息:多读技术官方文档、IEEE论文;

  2. 锁定榜样:在LinkedIn追踪3-5位大数据领域从业者的成长路径;

  3. 限定信息源:每天只留30分钟浏览行业新闻,拒绝碎片化阅读。

最后的话

Patrick,你身上有太多我年轻时的影子:那种在黑暗中咬牙前行的倔强,那种渴望突破阶层的不甘。疾病或许拖慢了你的脚步,但也赐予了你常人难及的坚韧。 请相信:

“人生不是短跑,而是带着枷锁的马拉松。那些压不垮你的重负,终将成为你超越他人的跑道。”

你担心的“无用之人”,绝不会是一个每日精进的技术者、一个与疾病抗争的勇士、一个在书籍中寻找光亮的思考者。保持这三点,你的人生绝不会黯淡。

期待听到你未来的好消息。

此致
李明博


http://www.xdnf.cn/news/12290.html

相关文章:

  • 软考 系统架构设计师系列知识点之杂项集萃(81)
  • Spring Bean是否是线程安全的
  • 虎扑正式易主,迅雷完成收购会带来什么变化?
  • Postman常见问题及解决方法
  • 红花基因组2-文献精读141
  • springBoot服务之间的转发
  • el-tabs 切换时数据不更新的问题
  • 驱动:字符驱动操控硬件
  • freeRTOS中断中为什么不能进行任务切换2
  • 基于红黑树的插入功能,对Set和Map部分功能进行封装实现
  • 打造智慧医疗枢纽,香港维尔利引领东南亚健康科技升级
  • 八:操作系统设备管理之RAID
  • STM32 智能小车项目 两路红外循迹模块原理与实战应用详解
  • HTV 3.3 | 秒播无卡顿 直播源每天维护更新
  • Q: 数据库增删改查的逻辑如何实现?
  • 996引擎-自定义装备/道具:限时装备、限时道具
  • 如何通过requests和time模块限制爬虫请求速率?
  • 算法题(162):火烧赤壁
  • React状态管理Context API + useReducer
  • Flyway
  • vue3+js示例
  • delphi7 链表 使用方法
  • 基于STM32单片机的电子秤系统设计(原理图+PCB+程序+仿真+文章)
  • SpringCloud——OpenFeign
  • web第十次课后作业--Mybatis的增删改查
  • 微服务架构——配置管理与配置中心
  • 【Java】RxJava解析
  • 麒麟信安系统下修改系统默认记录日志大小
  • 上传、下载功能 巧实现
  • 如何修改项目在浏览器中的小图标