【Python基础】Python数据容器(字符串)

简介: 【Python基础】Python数据容器(字符串)

数据容器:str(字符串)

  • 字符串的下标(索引):同其他容器(如列表、元组),字符串也可以通过下标进行访问
  • 从前向后,下标从0开始
  • 从后向前,下标从-1开始
my_str = "hello and python"
# 通过下标索引取值
value = my_str[2]
value2 = my_str[-8]
print(f"从字符串{my_str}取出下标为2的:{value},下标为-8的:{value2}")
运行效果:
从字符串hello and python取出下标为2的:l,下标为-8的:d

同元组一样,字符串是一个:无法修改的数据容器

所以:

  • 修改指定下标的字符 (如:字符串[0] = “a”)
  • 移除特定下标的字符 (如:del字符串[0]、字符串.remove()、字符串.pop()等等)
  • 追加字符等 (如:字符串.append())
  • 均无法完成。如果必须要做,只能得到一个新字符串,老的字符串是无法修改的

字符串的常用操作

(1)查找特定字符串的下标索引值

语法:字符串.index(字符串)

# index方法
value = my_str.index("and")
print(f"在字符串{my_str}中查找and,其起始下标是:{value}")
运行效果:
在字符串hello and python中查找and,其起始下标是:6

(2)字符串的替换

语法:字符串.replace(字符串1,字符串2)

功能:将字符串内的全部:字符串1,替换为字符串2

注意:不是修改字符串本身,而是得到一个新的字符串

# replace方法
new_my_str = my_str.replace("h", "--")
print(f"将字符串{my_str},进行替换操作后,得到:{new_my_str}")
运行效果:
将字符串hello and python,进行替换操作后,得到:--ello and pyt--on

3)字符串的分割

语法:字符串.split(分隔符字符串)

功能:按照指定的 分隔符字符串,将字符串划分为多个字符串,并存入列表对象中

注意:字符串本身不变,而是得到了一个列表对象

# split方法
my_str = "hello and python"
my_str_list = my_str.split(" ")
print(f"字符串{my_str}经过split切分后得到:{my_str_list},类型是:{type(my_str_list)}")
运行效果:
字符串hello and python经过split切分后得到:['hello', 'and', 'python'],类型是:<class 'list'>

(4)字符串的规整操作(去前后空格)

语法:字符串.strip()

# strip方法
my_str = " hello and python "
new_my_str = my_str.strip()  # 不传入参数,去除首尾空格
print(f"字符串{my_str}被strip()后,结果{new_my_str}")
运行效果:
字符串 hello and python 被strip()后,结果hello and python

(5)字符串的规整操作(去前后指定字符串)

语法:字符串.strip(字符串)

Tip:传入的是”12“,其实就是:”1“和”2“都会移除,是按照单个字符的

my_str = "12hello and python21"
new_my_str = my_str.strip("12")  # 传入参数,去除首尾 指定字符(单个对应)
print(f"字符串{my_str}被strip('1,2')后,结果{new_my_str}")
运行效果:
字符串12hello and python21被strip('1,2')后,结果hello and python

(6)统计字符串中某字符串的出现次数

语法:字符串.count(字符串)

# 统计字符串中某字符串的出现次数,count
my_str = "hello hi and hipython hi"
count = my_str.count("hi")
print(f"字符串{my_str}中hi出现的次数是:{count}")

(7)统计字符串的长度

语法:len(字符串)

# 统计字符串的长度,len()
my_str = "hello and python"
num = len(my_str)
print(f"字符串{my_str}的长度是:{num}")

字符串的遍历

同列表、元组一样,字符串也支持while循环和for循环进行遍历

# while-字符串遍历
my_str = "hi python"
index = 0
while index < len(my_str):
    print(my_str[index])
    index += 1
# for-字符串遍历
my_str = "=hi python"
for element in my_str:
    print(element)

字符串的特点

作为数据容器,字符串有如下特点:

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

Q:字符串为什么被称之为数据容器呢?

字符串可以看作是字符的容器,支持下标索引等特性

  • 练习案例:分割字符串
"""
字符串 练习案例
"""
my_str = "hi python hihello hello"
# 统计字符串内有多少个"hi"
sum = my_str.count("hi")
print(f"总共有:{sum}个hi")
# 将字符串内的空格,全部替换为字符:“--”
new_my_str = my_str.replace(" ", "|")
print(f"替换之后:{new_my_str}")
# 并按照"|"进行字符串分割,得到列表
my_str_list = new_my_str.split("|")
print(f"分割之后的列表:{my_str_list}")


目录
相关文章
|
17天前
|
数据采集 数据可视化 数据挖掘
利用Python自动化处理Excel数据:从基础到进阶####
本文旨在为读者提供一个全面的指南,通过Python编程语言实现Excel数据的自动化处理。无论你是初学者还是有经验的开发者,本文都将帮助你掌握Pandas和openpyxl这两个强大的库,从而提升数据处理的效率和准确性。我们将从环境设置开始,逐步深入到数据读取、清洗、分析和可视化等各个环节,最终实现一个实际的自动化项目案例。 ####
|
22天前
|
Python
在 Python 中,如何将日期时间类型转换为字符串?
在 Python 中,如何将日期时间类型转换为字符串?
119 64
|
13天前
|
存储 测试技术 Python
Python 中别再用 ‘+‘ 拼接字符串了!
通过选择合适的字符串拼接方法,可以显著提升 Python 代码的效率和可读性。在实际开发中,根据具体需求和场景选择最佳的方法,避免不必要的性能损失。
38 5
|
15天前
|
数据采集 分布式计算 大数据
构建高效的数据管道:使用Python进行ETL任务
在数据驱动的世界中,高效地处理和移动数据是至关重要的。本文将引导你通过一个实际的Python ETL(提取、转换、加载)项目,从概念到实现。我们将探索如何设计一个灵活且可扩展的数据管道,确保数据的准确性和完整性。无论你是数据工程师、分析师还是任何对数据处理感兴趣的人,这篇文章都将成为你工具箱中的宝贵资源。
|
17天前
|
Python
使用Python计算字符串的SHA-256散列值
使用Python计算字符串的SHA-256散列值
24 7
|
24天前
|
Python
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
32 6
|
25天前
|
开发者 Docker Python
从零开始:使用Docker容器化你的Python Web应用
从零开始:使用Docker容器化你的Python Web应用
34 1
|
28天前
|
传感器 物联网 开发者
使用Python读取串行设备的温度数据
本文介绍了如何使用Python通过串行接口(如UART、RS-232或RS-485)读取温度传感器的数据。详细步骤包括硬件连接、安装`pyserial`库、配置串行端口、发送请求及解析响应等。适合嵌入式系统和物联网应用开发者参考。
45 3
|
29天前
|
数据采集 JavaScript 程序员
探索CSDN博客数据:使用Python爬虫技术
本文介绍了如何利用Python的requests和pyquery库爬取CSDN博客数据,包括环境准备、代码解析及注意事项,适合初学者学习。
74 0
|
索引 Python 容器
Python基础知识10: 容器类型公共方法
Python基础知识10: 容器类型公共方法
125 0