python 序列类型常用方法

简介: 本章节主要认识系列类型的常用方法

人生苦短,我学python

一、列表生成式

生成列表 1 ~9:

第一种

直接写

第二种

list(range(1,10))

第三种

列表生成式:可以在列表中写for循环和if语句

语法
a = [i for i in range(1,10)] # 循环将for左边的值添加到列表中
lis = [i**2 for i in range(1,10)]
print(lis)
lis = [i for i in range(1,10) if i % 2 == 0]

二、可变类型与不可变类型

数值字符串元组 是不可变类型

列表集合(set)、字典(dict) 是可变类型

三、字符串常用方法

1、初识方法

操作数据最本质的行为:增删改查

方法 --> 解决问题的办法/一些特定功能 --> 对数据进行增删改查的操作

使用方法的语法:

数据.方法名()
学习方法的技巧
1:该方法的作用
2:该方法的参数

对于可变数据类型和不可变数据类型

不可变类型 --》方法一般都是返回一个全新的值,并不是修改原数据

可变类型–》方法通常都不需要接收返回值,因为直接改原数据

2、find()

作用:可指定范围查找子串,返回下标值,找不到返回-1

参数:str.find(s,beg=0,end=len(string))

s – 指定查找的字符串

beg – 开始下标,默认为0

end – 结束下标,默认为字符串长度

s = "hello,world,python,php"
print(s.find("h"))  # find只会返回首个的下标
print(s.find("h",1))  # 从下标1处开始找,find只会返回首个的下标
print(s.rfind("h"))  # 从最后开始找

3、index()

作用:可指定范围查找元素,返回下标值,找不到报错

s = "hello,world"
print(s.index("h"))  # 找到h的下标
print(s.index("world"))  # 找world则返回 子串首个字母的下标
print(s.index("word"))  # 找不到报错

4、count()

count(): 返回子串出现个数

参数: count(s)

s : 子串

s = "hello,world,python,php,"
print(s.count("l"))

5、lower()和upper()

lower():转小写

upper():转大写

s = "hello,world,python,php,"
s2 = s.upper() # 转大写
s3 = s2.lower() # 转小写
print(s3)

6、split()

split(): 切分字符串 , 将 字符串类型 转换 列表 ,默认以空格切分,也可以指定字符切分

参数:str.split(s)

s : 表示 指定切割字符串, 可以不写默认是空格

s = "hello world python,php"
print(s.split("p"))

7、replace()

replace() : 把字符串中的子串 替换成 新的字符串

参数 str.replace(old,new,max)

old : 要替换的字符串

new : 新的字符串

max:替换次数(默认所有)

s = "hello world python php"
s2 = s.replace(" ",",")
print(s2)

8、join()

join():用于将序列中的元素以指定 字符串 连接成新的字符串

join()常用于 将 列表 转为 字符串

arr = ["摆烂阳", "在", "摆烂"]
print("".join(arr))  # 常用于将列表转化为字符串

二、列表的增删改查

1、增

1.append() : 添加一个数据,添加到列表的最后一位
    语法:列表名.append(数据)
  li = [6, 1, 5, 7, 3, 10, 8]
  li.append(1) # 注意:改变的原数据
  print(li)
2.insert() : 添加一个数据,添加到指定下标位置
    语法:列表名.insert(下标,内容)
    li = [6, 1, 5, 7, 3, 10, 8]
    li.insert(2,"摆烂阳")
    print(li)
3.extend() : 追加一个序列类型,将该序列类型拆分添加到最后
    li = [6, 1, 5, 7, 3, 10, 8]
    li.extend([6,5,4]) # 将序列进行拆分,往最后添加  
    print(li)

2、删

1.pop():删除一个指定的下标, 默认是删最右
  语法:列表名.pop(下标)
    li = [6, 1, 5, 7, 3, 10, 8]
    li.pop(3) # 删除下标3处的值
    print(li)
2.remove() 删除一个指定的值。
    li = [6, 1, 5, 7, 3, 10, "摆烂阳", 8]
    li.remove("摆烂阳")  # remove里面填的是值
    li.remove(10)
    li.remove(6)
    print(li)
3.clear() : 清空列表里面的所有数据
    li = [6, 1, 5, 7, 3, 10, "摆烂阳", 8]
  li.clear()  # 将列表清空=》空列表
  print(li)

3、改

1.单个修改:直接通过下标进行修改
    语法:列表名[下标] = 内容
    li = [6, 1, 5, 7, 3, 10, "摆烂阳", 8]
    # 直接根据对应下标,赋值
    li[0] = "从不吃晚饭"
    print(li)
2.多个修改:通过切片方式进行修改
    语法:列表名[起点:终点] = 数据1,数据2,数据... 
    li[1:3] = 7,2,3

4、查

  1.index:根据内容获取指定数据的下标
    2.count:统计数据出现的次数
li = [6, 1, 5, 7, 3, 10, "摆烂阳", 1]
print(li.index("摆烂阳"))
print(li.index(6))
print(li.count(1))

5、其他

排序方法
  sort:将列表的内容排序修改
li = [6, 1, 5, 7, 3, 10, 2]
# 注意sorted 和 sort 
sorted(li) # 不会修改原数据,而是返回排好序新列表
print(li)
li.sort()
print(li)
li.sort(reverse=True) # 降序
print(li)

三、元组的查

元组的内容是不可变的,所以它只有查询的方法,并且存在的查和列表一模一样

1.index: 找数据下标
    元组名.index(检索内容)
2.count: 统计出现次数
    元组名.count(检索内容)


相关文章
|
7天前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
74 1
|
1月前
|
机器学习/深度学习 数据采集 数据挖掘
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
|
8天前
|
IDE 开发工具 开发者
Python类型注解:提升代码可读性与健壮性
Python类型注解:提升代码可读性与健壮性
168 102
|
1月前
|
调度 Python
微电网两阶段鲁棒优化经济调度方法(Python代码实现)
微电网两阶段鲁棒优化经济调度方法(Python代码实现)
|
1月前
|
传感器 大数据 API
Python数字限制在指定范围内:方法与实践
在Python编程中,限制数字范围是常见需求,如游戏属性控制、金融计算和数据过滤等场景。本文介绍了五种主流方法:基础条件判断、数学运算、装饰器模式、类封装及NumPy数组处理,分别适用于不同复杂度和性能要求的场景。每种方法均有示例代码和适用情况说明,帮助开发者根据实际需求选择最优方案。
75 0
|
1月前
|
Python
Python字符串center()方法详解 - 实现字符串居中对齐的完整指南
Python的`center()`方法用于将字符串居中,并通过指定宽度和填充字符美化输出格式,常用于文本对齐、标题及表格设计。
|
12天前
|
算法 调度 决策智能
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
|
1月前
|
机器学习/深度学习 数据采集 算法
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
121 4
|
1月前
|
安全 JavaScript Java
Python中None与NoneType的真相:从单例对象到类型系统的深度解析
本文通过10个真实场景,深入解析Python中表示“空值”的None与NoneType。从单例模式、函数返回值,到类型注解、性能优化,全面揭示None在语言设计与实际编程中的核心作用,帮助开发者正确高效地处理“无值”状态,写出更健壮、清晰的Python代码。
166 3
|
1月前
|
机器学习/深度学习 数据采集 TensorFlow
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)

推荐镜像

更多