字符串方法

 __contains__       #等同in

 name = 'erroy'
result = name.__contains__('er') #判断元素是否包含er
print(result) True #结果

__divmod__  #求网页的分页情况应该划分多少

 all_item=95
result =all_item.__divmod__(10)
print(result) (9, 5) #结果

capitalize()   #首字母大写

 name ='eric'
result=name.capitalize()
print(result) Eric #结果

center()    #居中

 name=''
result=name.center(20,',')
print(result) ,,,,,,,,123,,,,,,,,, #结果

count()     #判断一个元素出现在字符串里几次

 name='asdasasfasd'
result = name.count('d')
print(result) 2 #结果

encode()    #字符编码转换

 name ='asdasd'
result = name.encode('gbk')
print(result) b'asdasd' #结果

endswith()  #判断是不是以什么结尾的

 name = 'asdasdfe'
result = name.endswith('e')
print(result) True #结果 result = name.endswith('e',0,3) #判断是不是这个区间结尾的。
print(result) False #结果

startswith()    #判断是不是什么开头

 name='alex'
if name.startswith('a'):
print('yes')
\yes

expandtabs()    #把tab转换成空格

 name = 'a\tles'
result = name.expandtabs(tabsize=30) #可以指定转换成多少空格不常用
print(result) a les #结果

find()      #查找返回元素的索引值

 name = 'alex'
result = name.find('x')
print(result)
print(name[name.find('name'):]) 3 #结果
x

format()    #格式化字符

 name ='alex{0} as id{1}'
result = name.format('sb','eric')
print(result) alexsb as ideric #结果 name = 'alex{name}as{id}'
result = name.format(name='sb',id='eric')
print(result) alexsbaseric #结果

index()     #查找元素的索引值,不存就报错,返回布尔值

 name = 'asexdsaex'
result = name.index('ex')
print(result) 2 #结果

isalnum()   #判断是不是阿拉伯数字或字母,返回布尔值

 print('abc123'.isalnum())

 Treu        #结果

isalpha()   #判断是不是英文字符,返回布尔值

 print('abA'.isalpha())

 True    #判断结果

isdecimal()     #判断是不是10进制数

 print('11a'.isdecimal())

 False   #结果

isdigit()       #判断是不是数字

 name = ''
print(name.isdigit())
if"".isdigit():
print('1A'.isdigit()) True #结果
False

isspace()       #判断是不是空格,完全是空格才是真

 print(''.isspace())  

 False   #结果

istitle()   #判断是不是标题

 print('My  name s '.istitle())

 False   #结果

isupper()   #判断是不是全部是大写

 print('MY NAME IS'.isupper())

 True    #结果

join()  #拼接

 li = ['s','a','e','x']
result=''.join(li) #双引号之间可以设置想要用什么相隔开
print(result) saex #结果

lower()     #将字母变小写

 print('AAA'.lower())

 aaa     #结果

upper()     #讲字母变大写

 print('aaa'.upper())

 AAA     #结果

strip()     #去掉两边空格,包括换行符和tab

 print(' alex\n'.strip())

 alex    #结果

maketrans()     #起到对应关系的作用

 intab = 'aeiou'
outtab = ''
trantab = str.maketrans(intab,outtab)
print(trantab)
p = str.maketrans('abcdef','')
print(p)
print('alex li'.translate(p)) {97: 49, 101: 50, 105: 51, 111: 52, 117: 53} #结果
{97: 49, 98: 50, 99: 51, 100: 52, 101: 53, 102: 54}
1l5x li

partition() #分割

 name = 'alexissb'
result = name.partition('is')
print(result) ('alex', 'is', 'sb') #结果

replace()   #替换元素

 name='alexissb'
result=name.replace('a','o',1)
print(result) olexissb #结果

rfind()     #从左往右找,找到最右边的下标

 name='aaaa'
print(name.rfind('a')) 3 #结果

rindex()    #从右开始找元素,没有就报错

 name='aaaa'
print(name.rindex('a')) 3 #结果

split()  #指定分隔符切割

 t=('1+2+3+4'.split('+'))  #会分割成列表
print(t,type(t)) ['', '', '', ''] <class 'list'>    #结果

splitlines() #根据换行符分割,能帮你识别windows下的换行符和linux下的换行符,会切割成列表

 print('1+2\n+3+4'.splitlines())
['1+2', '+3+4'] #结果

swapcase()  #大小写转换

 print('Alex Li'.swapcase())
aLEX lI    #结果

list 列表的方法

copy()    #拷贝

 names = ['4ZhangYang','#1Gunyun','xXiangPeng',["alex","jack"],'ChenRonghua']
name2 = names.copy()
print(names)
print(name2)
names[2] = "向鹏"
names[3][0] = "alexder"
print(names)
print(name2) #第二层列表会复制一份内存地址
print(names[0:-1:2])
for i in names:
print(i)
如果列表等于列表,那都引入一个内存地址 如果想改变下,可以引入深copy
import copy
names = ['4ZhangYang','#1Gunyun','xXiangPeng',["alex","jack"],'ChenRonghua']
name2 = copy.deepcopy(names) 在深copy中修改,就属于完全独立出来的copy,会在内存中再次开辟空间 浅copy的作用,可以用来创建联合帐号
import copy
person = ["name",['saving',100]]
p1 = person[:]
#p2 = person.copy() #浅copy的三种方法
p2 = list(person)
print(p1)
print(p2) p1[1][1]=50
print(p1)
print(p2)

pop()    #默认移除最后一个,会有返回值

 li=['alex','seven']
lis=li.pop()
print(li,lis)
['alex'] seven    #结果

clear()    #清空列表,只剩None空值

 li=['alex','seven']
print(li.clear())
None

extend()    #扩展列表,更改原列表

 li=['alex','seven']
li.extend([11,22,33])
print(li)
['alex', 'seven', 11, 22, 33]

remove()    #移除指定元素

 li=['alex','seven']
li.remove('alex')
print(li)
['seven']

reverse()    #反转

 li=['alex','seven']
li.reverse()
print(li)
['seven', 'alex']

sort()    #排序

 li = [2,6,8,4,9,1]
li.sort()
print(li)
[1, 2, 4, 6, 8, 9]

count()    #统计元素出现的次数

 li = [2,6,8,4,9,1]
print(li.count(2))
1

append()    #追加元素进列表

 li = [2,6,8,4,9,1]
li.append(2)
print(li)
[2, 6, 8, 4, 9, 1, 2]

元祖的方法和列表方法大抵相同,除了少了修改的操作,和index()、count()等方法。但元组可以在映射(和集合的成员)中当键使用——而列表不行。元组作为很多内建函数和方法的返回值,所以你必须对元组进行处理,只要不尝试修改,你都能当做列表来修改。

字典

字典的常用操作

len(dic)  #返回dic项中(键值对)的数量

dic[k]    #返回关联到键K上的值:

dic[k]=v    #将值v关联到键为k的项

del d[k]    #删除键为k的项:

k in d    #检查d中是否有含有键为k的项

clear()    #清除字典在内存中的引用

 x={}
y=x
x['key']='value'
x.clear()
print(y)
{}

fromakeys()    #用来将同一个value赋值给不同的key,这是一个浅copy

 dic=dict(k1='v1',k2='v2')
new_dict=dic.fromkeys(['k1','k2'],'v1')
print(new_dict)
{'k1': 'v1', 'k2': 'v2'}

用来查找字典元素的最合适的方法

get()    #打开字典查找元素,如果没有会返回一个None的空值,也能指定返回的值

 dic=dict(k1='v1',k2='v2')
{'k1': 'v1', 'k2': 'v2'}
dic={'k1':'v1','k2':'v2'}
print(dic.get('k1'))
print(dic.get('k3','alex'))
6 v1
alex

keys()    #返回所有的key

 dic=dict(k1='v1',k2='v2')
print(dic.keys())
dict_keys(['k1', 'k2'])

values()    #返回所有的value

 dic=dict(k1='v1',k2='v2')
print(dic.values())
dict_values(['v1', 'v2'])

items()    #返回所有的key和value

 dic=dict(k1='v1',k2='v2')
print(dic.items())
dict_items([('k1', 'v1'), ('k2', 'v2')])

pop()    #移除一个元素,有返回值,在这里必须指定元素移除

 dic=dict(k1='v1',k2='v2')
print(dic.pop('k1'))
v1

popoitem()    #无须的移除元素

#交互模式下的测试
1 dic=dict(k1='v1',k2='v2',k3='v3',k4='v4',k5=5)
dic.popitem()
('k3', 'v3')
dic.popitem()
('k2', 'v2')
dic.popitem()
('k1', 'v1')
dic.popitem()
('k5', 5)

update()    #用来合并字典,如果key相同,当值有更新的时候,会去更新字典

 dic=dict(k1='v1',k2='v2')
dicb = dict(v1='k1',v2='k2',k1='v3')
dic.update(dicb)
print(dic)
{'k1': 'v3', 'k2': 'v2', 'v1': 'k1', 'v2': 'k2'}

setdefault()    #增加元素,如果元素以存在取消操作,再返回字典。如果不存在则更新字典,可更新键和value

 dic=dict(k1='v1',k2='v2')
print(dic.setdefault('k1',{'k1':'v2'}))
print(dic.setdefault('k3',{'k3','v3'}))
print(dic)
print(dic.setdefault('k4','alex'))
print(dic)
v1
{'v3', 'k3'}
{'k1': 'v1', 'k2': 'v2', 'k3': {'v3', 'k3'}}
alex
{'k1': 'v1', 'k2': 'v2', 'k3': {'v3', 'k3'}, 'k4': 'alex'}

set集合  set是一个无须且不重复的元素集合,还可以做关系测试

 s1 = set()
s1.add('alex')
s2=set(['alex','eric','tony','alex']) #创建集合,自动转换列表成set类型
print(s2)
s3 = s2.difference(['alex','eric']) #找到两个集合不同的,然后将不同的元素集合起来创建的集合
print(s3)
{'tony', 'alex', 'eric'}
{'tony'}

discard()  #和remove道理差不多区别是需要他指定一个元素移除,更新集合

 s2=set(['alex','eric','tony'])   #创建集合,自动转换列表成set类型
print(s2)
s2.discard('alex')
print(s2)
{'eric', 'tony', 'alex'}
{'eric', 'tony'}
difference()  #取差集,列表1里有的,列表2里没有的给取出来
 s1=set(['alex','eric','tony'])
s2=set([1,2,3,4,5])
print(s1.difference(s2))
{'tony', 'eric', 'alex'}
intersection()    #取交集 ,新创建一个set
 list_1 = [1,4,5,6,3,6,7,9]
list_1 = set(list_1)
list_2 = set([2,6,0,66,22,8,4])
print(list_1.intersection(list_2)) #取交集
{4, 6}
intersection_update()    #取交集,修改原来的set

 s4=s2.difference_update(['alex','eric'])    #传入什么元素就删除什么元素,更新本身的元素
print(s2)
print(s4)
set(['tony', 'alex', 'eric'])
set(['tony'])
None
例二:
print(list_1 & list_2)
union()    #取并集
 print(list_1.union(list_2))         #取并集
{0, 1, 2, 3, 4, 5, 6, 7, 66, 9, 8, 22}
print(list_2 | list_1)
update() #添加多个元素

 list_1.update([888,777,555])
print(list_1)
{1, 3, 4, 5, 6, 7, 9, 777, 555, 888}
isdisjoint() #如果没有交集,返回true
 list_1  = [1,4,5,6,3,7,9]
list_1=set(list_1)
list_2 = set([2,6,0,66,22,8,4])
print(list_1.isdisjoint(list_2))
False
issubset() #是否是子集
1 list_1 = [1,4,5,6,3,7,9]
2 list_1=set(list_1)
list_3 = set([1,4,7])
print(list_3.issubset(list_1))
True
issuperset() #是否是父集

 print(list_1.issuperset(list_3))
True
.symmetric_difference() #对称差集
 print(list_1.symmetric_difference(list_2))
{0, 1, 2, 66, 3, 5, 8, 7, 9, 22}
例二:
print(list_1 ^ list_2)
isdisjoint() #判断是否是相交集,返回bool值
pop() #取出一个元素,并返回
remove() #需要给一个参数,没有返回值
 

python字符串,列表,字符串,元组,集合的一些方法的更多相关文章

  1. python之字符串,列表,字典,元组,集合内置方法总结

    目录 数字类型的内置方法 整型/浮点型 字符串类型的内置方法 列表的内置方法 字典的内置方法 元组的内置方法 集合类型内置方法 布尔类型 数据类型总结 数字类型的内置方法 整型/浮点型 加 + 减 - ...

  2. Python基础-列表、元组、字典、字符串

    Python基础-列表.元组.字典.字符串   多维数组 nums1 = [1,2,3] #一维数组 nums2 = [1,2,3,[4,56]] #二维数组 nums3 = [1,2,3,4,['a ...

  3. Python中列表,元组,字典,集合的区别

    参考文档https://blog.csdn.net/Yeoman92/article/details/56289287 理解Python中列表,元组,字典,集合的区别 列表,元组,字典,集合的区别是p ...

  4. Python基础------列表,元组的调用方法

    Python基础------列表,元组的调用方法@@@ 一. 列表 Python中的列表和歌曲列表类似,也是由一系列的按特定顺序排列的元素组成的,在内容上,可以将整数,实数,字符串,列表,元组等任何类 ...

  5. [转]Python 的列表解析式,集合解析式,字典解析式

    Python 的列表解析式,集合解析式,字典解析式 这三种都是 python 里面的语法糖. 语法糖,Syntactic Sugar,就是为了写程序时候少出错,发明的一些简便的方法,但不影响这个语法的 ...

  6. Python判断列表是否已排序的各种方法及其性能分析

    目录 Python判断列表是否已排序的各种方法及其性能分析 声明 一. 问题提出 二. 代码实现 2.1 guess 2.2 sorted 2.3 for-loop 2.4 all 2.5 numpy ...

  7. Python中列表、元组、字典、集合与字符串,相关函数,持续更新中……

    本篇博客为博主第一次学 Python 所做的笔记(希望读者能够少点浮躁,认真阅读,平心静气学习!) 补充: 列表.元组和字符串共同属性: 属于有序序列,其中的元素有严格的先后顺序 都支持双向索引,索引 ...

  8. Python基础-列表、元组、字典、字符串(精简解析),全网最齐全。

    一.列表 =====================================================1.列表的定义及格式: 列表是个有序的,可修改的,元素用逗号隔开,用中括号包围的序列 ...

  9. Python基础-列表、元组、字典、字符串(精简解析)

    一.列表 =====================================================1.列表的定义及格式: 列表是个有序的,可修改的,元素用逗号隔开,用中括号包围的序列 ...

  10. python中列表,元组,字符串互相转换

    列表,元组和字符串python中有三个内建函数:,他们之间的互相转换使用三个函数,str(),tuple()和list(),具体示例如下所示 >>> s = "xxxxx& ...

随机推荐

  1. select应用于read函数 超时非阻塞方式

    /* * "Timed" read - timout specifies the # of seconds to wait before * giving up (5th argu ...

  2. 读Zepto源码之Touch模块

    大家都知道,因为历史原因,移动端上的点击事件会有 300ms 左右的延迟,Zepto 的 touch 模块解决的就是移动端点击延迟的问题,同时也提供了滑动的 swipe 事件. 读 Zepto 源码系 ...

  3. java.lang.IllegalArgumentException: Result Maps collection already contains value for

    如果在SSM整合的时候出现以下的错误: 留意一下是不是既在Mybatis配置文件中加载了映射文件,又在Spring配置文件中使用扫描式去加载映射文件了.两者是不能够重合使用的! Caused by: ...

  4. SimpleRpc-序列化与反序列化的设计与实现

    为什么需要序列化和反序列化? 假设你是客户端,现在要调用远程的加法计算服务,你与服务端商定好了发送数据的格式:发送8个字节的请求,前4字节是第一个数,后4字节是第二个数,服务端读取数据的时候也按照商定 ...

  5. GCD之全局、主线程

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 -(NSString *)fetchData {     [NSThread sleepFo ...

  6. 微信小程序-发送模板消息(C#)

    步骤一:获取模板ID 有两个方法可以获取模版ID 通过模版消息管理接口获取模版ID 在微信公众平台手动配置获取模版ID 步骤二:页面的 <form/> 组件,属性report-submit ...

  7. Spring-boot:5分钟整合Dubbo构建分布式服务

    概述: Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合).从服务模型的角度来看,Dubbo采用的是一种非常 ...

  8. ubuntu12.04添加程序启动器到Dash Home

    ubuntu12.04 dash home中每个图标对应/usr/share/applications当中的一个配置文件(文件名后缀为.desktop).所以要在dash home中添加一个自定义程序 ...

  9. 2008-2009 ACM-ICPC, NEERC, Southern Subregional ContestF

    Problem F. Text Editor Input file: stdin Output file: stdout Time limit: 1 second Memory limit: 64 m ...

  10. Redis “瘦身”指南

    code[class*="language-"], pre[class*="language-"] { background-color: #fdfdfd; - ...