Python数据容器(字符串)

字符串


1.字符串
字符串也是数据容器的一种,字符串是字符的容器,一个字符串可以存放任意数量的字符。

2.字符串的下标索引

  • 从前向后,下标从0开始
  • 从后向前,下标从-1开始
# 通过下标索引获取特定位置的字符
name = 'python'
print(name[0]) # 结果 p
print(name[-1]) # 结果 n
  • 同元组一样,字符串也是一个无法修改的数据容器

3.字符串的常用操作

  • 查找特定字符串的下标索引值
    • 语法:字符串.index(字符串)
my_str = 'itcat and itheima'
print(my_str.index('and'))  # 输出 6
  • 字符串的替换
    • 语法:字符串.replace(字符串1,字符串2)
    • 功能:将字符串内的全部:字符串1,替换为字符串2
    • 注意:不是修改字符串本身,而是得到一个新的字符串
name = 'itcat and itheima'
new_name = name.replace('it','传智')
print(new_name)  #结果 传智cat and 传智heima
print(name)  # 结果 itcat and itheima
  • 字符串的分割
    • 语法:字符串.split(分割字符串)
    • 功能:按照指定的分隔符字符串,将字符串划分为多个字符串,并存入列表中
    • 注意:字符串本身不变,而是得到一个新的列表对象
name = 'itcat and itheima'
new_name = name.split(" ")
print(new_name)  # 结果 ['itcat', 'and', 'itheima']
  • 字符串的规整操作(去前后空格)
    • 语法:字符串.strip()
name = '  itcat and itheima  '
new_name = name.strip()
print(new_name)  # 结果 itcat and itheima
  • 字符串嗯对规整操作(去前后指定字符串)
    • 语法:字符串.strip(字符串)
name = '12itcat and itheima21'
new_name = name.strip('12')
print(new_name) # 结果 itcat and itheima
  • 统计字符串中某字符串的出现次数
    • 语法:字符串.count(字符串)
name = 'itcat and itheima'
num = name.count('it')
print(num)  # 结果 2
  • 统计字符串的长度
    • 语法:len(字符串)
name = 'itcat and itheima'
print(len(name))  # 结果 17
编号操作
1字符串[下标索引]根据索引取出特定位置的字符
2字符串.index(字符串)查找给定字符的第一个匹配项的下标
3字符串.replace(字符串1,字符串2)将字符串内的全部字符串1,替换为字符出串2;不会修改原字符串,而是得到一个新的
4字符串.split(字符串)按照给定的字符串,对字符串进行分隔不会修改原字符串,而是得到一个新的列表
5字符串.strip();字符串.strip(字符串)移除首尾的空格核换行符或指定字符串
6字符串.count(字符串)统计字符串内某字符串的出现的次数
7len(字符串)统计字符串的字符个数

4.字符串的遍历

  • while遍历
my_str = '程序员'
index = 0
while index < len(my_str):
    print(my_str[index])
    index += 1 # 结果 程序员
  • for遍历
my_str = '程序员'
for element in my_str:
    print(element) # 结果 程序员

5.字符串的特点

  • 只可以存储字符串
  • 长度任意(取决于内存大小)
  • 支持下标索引
  • 允许重复字符串存在
  • 不可以修改(增加或修改元素)
  • 支持while、for循环

6.练习
在这里插入图片描述

# 定义一个字符串
my_str = 'itheima itcast boxuegu'
# 统计字符串内有多少个'it'字符
print(f"字符串{my_str}中有:{my_str.count('it')}个it字符")
# 将字符串内的空格,全部替换为字符:“|”
print(f"字符串{my_str},被替换空格后,结果:{my_str.replace(' ','|')}")
# 并按照“|”进行字符分割,的带列表
new_str = my_str.replace(' ','|')
new_str2 = new_str.split("|")
print(f"字符串{new_str},按照|分隔后,得到:{new_str2}")
## 输出
字符串itheima itcast boxuegu中有:2个it字符
字符串itheima itcast boxuegu,被替换空格后,结果:itheima|itcast|boxuegu
字符串itheima|itcast|boxuegu,按照|分隔后,得到:['itheima', 'itcast', 'boxuegu']

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/129236.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

P1529 [USACO2.4] 回家 Bessie Come Home 题解

文章目录 题目描述输入格式输出格式样例样例输入样例输出 提示完整代码 题目描述 现在是晚餐时间&#xff0c;而母牛们在外面分散的牧场中。 Farmer John 按响了电铃&#xff0c;所以她们开始向谷仓走去。 你的工作是要指出哪只母牛会最先到达谷仓&#xff08;在给出的测试数…

半导体高加速应力测试及标准

半导体高加速应力测试及标准 随着电气和电子元件变得越来越密集&#xff0c;现在对零件和材料的高度加速应力测试的需求更大。 高加速应力测试系统&#xff08;HAST 室&#xff09;主要设计用于使用设定的施加电压和信号进行偏置测试。 控制功能可选择标准的不饱和控制和湿饱和…

Python MySQL 数据库查询:选择数据、使用筛选条件、防止 SQL 注入

从表格中选择数据 要从MySQL中的表格中选择数据&#xff0c;请使用"SELECT"语句&#xff1a; 示例选择"customers"表格中的所有记录&#xff0c;并显示结果&#xff1a; import mysql.connectormydb mysql.connector.connect(host"localhost"…

【PostgreSql本地备份为dump文件与恢复】使用脚本一键备份为dump文件

环境&#xff1a;windows数据库&#xff1a;postgresql 1.准备脚本 backUpDb.bat 脚本为备份脚本&#xff0c;双击运行&#xff0c;右键可以选择编辑&#xff1b;restoreDb.bat 脚本为恢复脚本&#xff0c;双击运行&#xff0c;右键选择编辑&#xff1b; 1.1 脚本介绍 如上图…

Flink之SQL客户端与DDL操作

SQL客户端与DDL操作 Flink SQLSQL客户端1.启动Flink2.启动Flink的SQL客户端3.HELP命令4.验证连接5.结果显示模式6.执行配置 数据库操作1.创建数据库2.查询数据库3.修改数据库4.删除数据库 表操作1.创建表表列属性表Watermark属性列PRIMARY KEY属性列PARTITIONED BY属性列WITH选…

c: struct sort descending and ascending in windows and Ubuntu

/*** file StudentStructSort.h* author geovindu,Geovin Du,涂聚文 (geovindu163.com)* ide: vscode c11,c17 Ubuntu 22.4* brief 结构体排序示例* date 2023-11-05* version 0.1* copyright geovindu 站在巨人的肩膀上 Standing on the Shoulders of Giants**/#ifnd…

matplotlib从起点出发(11)_Tutorial_11_TightLayout

如何使用紧凑的而已来干净利落地将绘图放入图形中。 tight_layout会自动调整子图参数&#xff0c;使子图适合图区域。这是一项实验性功能&#xff0c;在某些情况下可能不起作用。它仅检查刻度标签、轴标签和标题的范围。 tight_layout的替代方法是constrained_layout。 1 简…

10. GPIO中断

10. GPIO中断 回顾stm32中断系统STM32中断向量表中断向量偏移NVIC中断控制器 Cortex_A7 中断系统中断向量表GIC控制器中断IDGIC逻辑分块CP15协处理器c0寄存器c1寄存器c12寄存器c15寄存器 中断使能中断优先级设置优先级数配置 GICC_PMR抢占优先级和子优先级位数设置 GICC_BPR优先…

【C++】异常 智能指针

C异常 & 智能指针 1.C异常1.1.异常的抛出与捕获1.2.异常体系1.3.异常安全与规范1.4.异常优缺点 2.智能指针2.1.RAII2.2.智能指针的使用及原理2.2.1.auto_ptr2.2.2.unique_ptr2.2.3.shared_ptr2.2.4.shared_ptr的循环引用问题 & weak_ptr 2.3.定制删除器 1.C异常 C异常…

UML类图绘制指南

目录 类图简介 什么是类图 类图的作用 应用场景 类图中的元素 类和接口 六大关系 强弱关系 依赖关系&#xff1a; 关联关系&#xff1a; 聚合关系&#xff1a; 组合关系&#xff1a; 实现关系&#xff1a; 继承关系&#xff1a; 画图注意事项 总结 类图的重要…

NIO讲解

一&#xff1a;什么是NIO? 二&#xff1a;NIO三大组件 1. channel channel 有一点类似于 stream&#xff0c;它就是读写数据的双向通道&#xff0c;可以从 channel 将数据读入 buffer&#xff0c;也可以将 buffer 的数据写入 channel&#xff0c;而之前的 stream 要么是输入…

P1547 [USACO05MAR] Out of Hay S 题解

文章目录 题目描述输入格式输出格式样例样例输入样例输出 完整代码 题目描述 Bessie 计划调查 N N N&#xff08; 2 ≤ N ≤ 2 000 2 \leq N \leq 2\,000 2≤N≤2000&#xff09;个农场的干草情况&#xff0c;它从 1 1 1 号农场出发。农场之间总共有 M M M&#xff08; 1 ≤…

阻塞队列+定时器+常见的锁策略

1)阻塞队列:是一个线程安全的队列&#xff0c;是可以保证线程安全的 1.1)如果当前队列为空&#xff0c;尝试出队列&#xff0c;进入阻塞状态&#xff0c;一直阻塞到队列里面的元素不为空 1.2)如果当前队列满了&#xff0c;尝试入队列&#xff0c;也会产生阻塞&#xff0c;一直阻…

(论文阅读24/100)Visual Tracking with Fully Convolutional Networks

文献阅读笔记&#xff08;sel - CNN&#xff09; 简介 题目 Visual Tracking with Fully Convolutional Networks 作者 Lijun Wang, Wanli Ouyang, Xiaogang Wang, and Huchuan Lu 原文链接 http://202.118.75.4/lu/Paper/ICCV2015/iccv15_lijun.pdf 【DeepLearning】…

easyexcel==省市区三级联动

省市区三级联动&#xff0c;不选前面的就没法选后面的 package com.example.demoeasyexcel.jilian2; import com.alibaba.excel.write.metadata.holder.WriteSheetHolder; import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder; import org.apache.poi.ss.use…

IT 基础设施监控工具

IT 基础架构监控作为一个整体&#xff0c;是关于跟踪网络环境中所有 IT 资产的运行状况和性能&#xff0c;网络管理系统收集有关各种指标的数据&#xff0c;例如可用性、运行状况、性能和利用率&#xff0c;然后&#xff0c;IT 基础架构监控将这些数据转换为有用的统计数据&…

【Python】数据分析案例:世界杯数据可视化 | 文末送书

文章目录 前期数据准备导入数据 分析&#xff1a;世界杯中各队赢得的比赛数分析&#xff1a;先打或后打的比赛获胜次数分析&#xff1a;世界杯中的抛硬币决策分析&#xff1a;2022年T20世界杯的最高得分者分析&#xff1a;世界杯比赛最佳球员奖分析&#xff1a;最适合先击球或追…

Python+reuqests自动化接口测试

1.最近自己在摸索Pythonreuqests自动化接口测试&#xff0c;要实现某个功能&#xff0c;首先自己得有清晰的逻辑思路&#xff01;这样效率才会很快&#xff01; 思路--1.通过python读取Excel中的接口用例&#xff0c;2.通过python的函数调用&#xff0c;get/Post 进行测试&…

【QT】qt打包程序后无法正常启动

本人在自己电脑上打包Qt程序后可以正常运行&#xff0c;但换了个电脑就无法运行了&#xff0c;显示应用程序无法正常启动&#xff08;0xc000007b&#xff09;。 造成这种情况的原因是因为系统变量的原因&#xff0c;我用的win10自带的cmd。 应该采用Qt自带的cmd&#xff0c;打开…

五种常见的IO模型

目录 一. IO的概述 1.1 什么是IO 1.2 IO的效率问题 1.3 同步IO和异步IO的概念 二. 阻塞式IO 三. 非阻塞式IO 四. 信号驱动式IO 五. IO多路复用 六. 异步IO 七. 总结 一. IO的概述 1.1 什么是IO IO&#xff0c;表示输入输出&#xff0c;即&#xff1a;InPut / OutPut…