python(3): str list dict tuple set 常用函数整理
多个类型对象共有方法
1.方括号切片
语法:[start:end:step] #step默认为1
适用所有可下标操作的对象,如:str , list,tuple等
例:
print([1,2,3,4,5,6][2:4:1])
print("123456"[4:2:-1])
1.1 复制数组
a = b[:] #效果等同于浅拷贝
场景:切取片段,翻转
2.reversed()与reverse()
reversed() -- python自带的一个方法,准确说,应该是一个类
作用:反转迭代器的序列值,返回反向迭代器(需要使用类型转换成list/str等)
1.列表的反转:
>>> bb = [1,3,5,7]
>>> print(list(reversed(bb)))
[7, 5, 3, 1]
2.元组的反转:
>>> aa = (1, 2, 3)
>>> print(tuple(reversed(aa)))
(3, 2, 1)
3.字符串的反转
>>> aa = 'asbdamfgh'
>>> ''.join(reversed(aa)) 不可套用str(reversed(aa))
'hgfmadbsa'
reverse() -- 列表的内置方法
作用:翻转列表
lista = [1, 2, 3, 4]
lista.reverse()
3.join与split
str.join(sequence) #方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
注:sequence可为list,tuple,set等,元素必须为str类型
print('-'.join(('1','2','3','4'))) #
str.split(str="", num=string.count(str)) #对字符串进行分割,返回列表
- str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等。
- num -- 分割次数。默认为 -1, 即分隔所有。
4.count()
适用于list,tuple,str
#统计某个元素在序列中出现的次数
print([1,2,3,4,4,4,5].count(4)) #3
print('1,2,222,3'.count('2')) #4
5.remove()
适用于list,set
删除序列中第一个匹配项,无返回值,会改动原对象
aa = [1,2,3,4,5]
aa.remove(4)
print(aa) #【1,2,3,5】
6.pop()
适用于:list ,dict
会改变原对象
list.pop([index=-1]) #移除指定index的值,默认为末尾值
字典的pop方法:pop(key[,default]) #如果没有key则返回default
ee = {"nn":11,"use":22}
print(ee.pop("nn")) #返回11
print(ee) #{'use': 22}
7.index()
适用于 list,tuple,str
#获取序列中匹配到的第一个元素的下标
print([1,2,4,3,4,5].index(4)) #2
print('1,2,3,34'.index('4')) #6
8.len()
适用于list,tuple,str,dict,set
print(len([1,2,4,3,4,5])) #6
9.max() min()
适用于str,list,tuple,set,dict
print(max({"nn":11,"use":22,"zd":33})) #zd 比较key值,返回key值
print(max('1,2,3,34a')) #a
10.clear()
适用于 list,dict,set
ee = {"nn":11,"use":22,"zd":33}
ee.clear()
print(ee) #{}
11.sorted()与sort()
sort() 只能对list排序
L.sort(cmp=None, key=None, reverse=False)
aa = [1,3,6,5,8,3,4]
print(aa) > [1, 3, 3, 4, 5, 6, 8]
sorted() 对可迭代对象排序
sorted(iterable, cmp=None, key=None, reverse=False) --> new sorted list
aa = [1,3,6,5,8,3,4]
bb=sorted(aa)
print(aa) #保留原对象 [1,3,6,5,8,3,4]
print(bb) #[1, 3, 3, 4, 5, 6, 8]
1.比较函数经常会用到lambda。(list子项的某个属性进行排序)
lambda表达式,通常是在需要一个函数,但是又不想费神去命名一个函数的场合下使用,也就是指匿名函数。比如对元组组成的列表中某一项进行排序:
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10),]
sorted(students, key=lambda student : student[2]) # sort by age
[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
2.可迭代元素经常会用到items
items是字典中的一个方法,返回由元组组成的列表。
dict={'a':1,'b':2}
ans = sorted(dict.items(), key = lambda x:x[1], reverse = True)
sort,sorted区别与联系
1.sort只对list排序,sorted对list和可迭代对象都能排序
2.sort与sorted都能指定key值排序
3.sort改变原数值;sorted不改变原数值,会生成新数值
list独有方法
list1.append(x) #list后追加x
list.extend(seq) #list后面追加一个序列,seq可为list,set,tuple,str
list.insert(index, obj) #列表指定位置插入数据
list.copy() #复制列表
list.reverse() #反向排序
list.sort() #对列表排序
str独有方法
name = "my name \tis {name} and {age} years old"
print(name.capitalize()) #第一个字母大写
print(name.title()) #字符串中每个单词的首字母均大写
print(name.center(50, "-"))#字符串长度为50,不够两边补‘-’
print(name.ljust(50,"*")) #字符串长度为50,不够最右边补‘-’
print(name.rjust(50,"*"))#字符串长度为50,不够最左边补‘-’
print(name.endswith("ex"))#检查字符串是否以传入参数为结尾
print(name.startswith("my"))#检查字符串是否以传入参数为开头
print(name.expandtabs(tabsize=30))#更改tab所占空格
print(name.find("name")) #返回传入的参数在该字符串中的索引值
print(name.rfind("a")) #找到最右边值为a的下标并返回
print(name.format(name = "alex", age = 23)) #字符串格式化
print(name.format_map({"name":"alex", "age":23})) #字符串格式化,传入的为字典
print("ab23".isalnum()) #检查字符串是否在所有英文字母及阿拉伯数字中
print("abA".isalpha()) #检查字符串是否为纯英文字符
print("0".isdigit()) #判断是否为非负整数,类似于isnumeric()函数
print("a1".isidentifier()) #判断是否为合法的标识符
print(" ".isspace()) #判断是否为空格
print("loA".islower()) #是否小写
print(name.lower()) #字母变为小写
print("ABC".isupper()) #是否大写
print(name.upper()) #字母变为大写
print("I am L".istitle()) #字符串中每个单词首字母是否大写
print("ab".isprintable())#是否可打印(tty文件与drive文件不可打印)
print("+".join(["1","3","3"]))#最好用于字符串分割列表(列表中的元素必须为字符串)
print("\nab c \n".strip()) #去除两边的空格或回车
print("\nab c \n".lstrip()) #去除最左边的空格或回车
print("\nab c \n".rstrip()) #去除最右边的空格或回车p = str.maketrans("abcdefg", "1234567") #将第一个参数的值替换为第二个参数的值,配合translate使用
print("alex".translate(p))print("alex li".replace("l", "a", 1))#将字符串中值为第一个参数的替换为第二个参数,数值1表示替换一个,不写替换全部
print("1+2+3+4".split("+")) #以传入的参数为值分割该字符串,返回的是一个列表,若无参数默认以空格分割
print("ajkdj\ndjfkdjf".splitlines())#相当于split("\n"),即换行.注:某些操作系统的换行符为\r\n
print("lex li".swapcase()) #大写变小写,小写变大写
dict独有方法
del d['key']
d.setdefault('key',value)
print(d['key']) #如果写了不存在的值会报错
print(d.get('key')) #如果写了不存在的值,返回None
print(d.get('key','not find ')) #如果找不到存在的值,返回 “not find”
print(d.keys()) #获取所有的key 值
print(d.values()) #获取所有的value 值
print('key' in dict1.keys()) #判断key是否存在
tuple独有方法
2 a=[1,2,3,4,1,5,'q','g']
3 print(tuple(a)) #将列表转为tuple
set独有方法
1:add #s1.add("alex")2:s1.difference(s2) #判断s1与s2的不同,并返回s1中多的部分3:differnce_update:是将原来的set跟新,set.difference_update(['eric',blare'])把与原来相同的剔除,不返回一个新的set,只是跟新了原有的set(集
4:discard :移除元素
5:intersection 取交集,新建一个set
6:intersection_update() 跟新有原有的set,不返回
7:issubset:是否是有子集
8:isdisjoint :如果没有交集,返回True
9:issuperset:是否有父集
10:symmetric_difference_update:是将a-b 和b-a 得到的重新组合成一个set#并不能和差集一样(对称差)
python(3): str list dict tuple set 常用函数整理相关推荐
- python数据分析函数大全_python中数据分析常用函数整理
一. apply函数 作用:对 DataFrame 的某行/列应用函数之后,Apply 返回一些值.函数既可以使用默认的,也可以自定义.注意:在第二个输出中应用 head() 函数,因为它包含了很多行 ...
- python基础常用语句-python爬虫之python一条语句分析几个常用函数和概念
https://www.xin3721.com/eschool/pythonxin3721/ 前言 过年也没完全闲着,每天用一点点时间学点东西,本文为大家介绍几个python操作的细节,包含all.a ...
- Python之pandas:pandas中数据处理常用函数(与空值相关/去重和替代)简介、具体案例、使用方法之详细攻略
Python之pandas:pandas中数据处理常用函数(与空值相关/去重和替代)简介.具体案例.使用方法之详细攻略 目录 pandas中数据处理常用函数(isnull/dropna/fillna/ ...
- python 中os.path 的一些路径常用函数
python 中os.path 的一些路径常用函数 import os path = 'AAA/BBB/ccc.txt' aa=os.path.dirname(path) #返回文件路径 print( ...
- mysql数据库 常用函数_《MySQL数据库》常用函数整理
原标题:<MySQL数据库>常用函数整理 以下内容,是我整理出来的比较常用的字符串函数,数值函数,日期函数. 第一类:字符串函数 1.conv(n,from_base,to_base):对 ...
- pandas 常用函数整理
pandas常用函数整理,作为个人笔记. 仅标记函数大概用途做索引用,具体使用方式请参照pandas官方技术文档. 约定 from pandas import Series, DataFrame im ...
- DL4J的矩阵处理模块ND4J的常用函数整理
ND4J矩阵变换的常用函数整理 由本人阅读nd4j源码整理,nd4j是dl4j为了矩阵运算整出来的一套工具.对应python里的numpy,但是并没有numpy那么普及,不过至少使用dl4j搭建神经网 ...
- oracle有哪些常用函数,Oracle常用函数整理
点击关注上方"SQL数据库开发", 设为"置顶或星标",第一时间送达干货 之前已经给小伙伴们整理了SQL Server和Mysql的常用函数,还没有看的可以戳下 ...
- opencv常用函数整理
opencv常用函数整理 一.常见函数整理 1.1 cv2.resize函数(图像size重定义) 1.2 cv2.getStructuringElement函数(构造卷积核) 1.3.cv2.put ...
最新文章
- Kruskal算法 - C语言详解
- IOS UISearchDisplayController 点击搜索出现黑条问题解决方案
- Android中自定义xml文件给Spinner下拉框赋值并获取下拉选中的值
- 【荐】牛逼的WPF动画库:XamlFlair
- Apache Camel 2.19发布–新增功能
- 如何实现一个循环显示超长图片的控件
- library not found for -lstdc++.6.0.9
- java查询到更新之前的数据_Java对数据库的查询和更新操作详解
- 测试oracle中set arraysize xx对性能的影响
- python vtk dicom_Python vtk读取并显示dicom文件示例
- CentOS7下Maven安装脚本
- html天天生鲜项目,day54-天天生鲜项目订单管理
- mapgis矢量化怎么打分数_mapgis矢量化错了如何后退一步
- 关于Windows 443端口被占用问题的解决
- 针式打印机偏移测试软件,精打教程(3)打印机打印偏移设置
- HI618E音频解码芯片
- __参加华为新员工培训有感
- java中小写字母转化大写字母,大写字母转化小写字母
- C++ 打怪游戏 原创 小镇4.0--机甲纪元
- 【OpenMMLab AI实战营 学习笔记 DAY(四)-- 目标检测基础知识及评估方法】
热门文章
- 阿里OSS自定义域名无法访问。404报错
- 江苏省2021年新高考适应考试成绩查询,2021年江苏省新高考适应性考试成绩查询时间...
- python小游戏源代码pygame_【pygame】Python 制作 XP 经典扫雷游戏(附源码)
- XP系统下 discuz论坛的安装
- 微信小程序 自定义组件 插槽slot
- 外卖领券饿了么美团优惠券微信小程序插件源码
- oracle联表更新语句
- 【Web安全从入门到放弃】11_目录遍历和敏感信息泄露漏洞
- HDFS查看文件大小以及统计 总和
- axb_2019_heap