python数据结构不常用的方法(哈哈,其实是常用的)

列表删除方法:

del L[index]  # 根据索引进行删除
L.remove(value) #删除指定的值,左边优先
m = L.pop(index) # 根据索引进行删除,可以得到删除的值,默认从后删除

记不住的方法:

L = ['1', 2, '3']
L1 = [1, 5, 3, 0, 8, 7, 2]
L.extend(L1)  # 个人理解将L1列表的元素分别添加到L列表后面 用来再列表里添加多值
print(L)
>>>['1', 2, '3', 1, 5, 3, 0, 8, 7, 2]
L.count(value) # 返回统计value再列表中的出现的次数
L.sort() # 对列表进行排序, 默认是升序
L.reverse() # 将整个列表倒序(反转), 注意是倒序,不是逆序
L.index(value) # 返回value的下标, 返回的是value出现的第一次的下标
# name 是一个字符串
name.capitalize()  首字母大写, 其他全部变小写
name.casefold()   大写全部变小写,比lower更加强大,lower指的是英文。它转化的是万国语言
name.replace('oldvalue', 'newvalue') # 将原来字符串中的oldvalue替换成newvalue,并且是生成一个新的字符串
name = 'hhdh dhsdh'
name.find(h) # 返回第一个h的索引name.find(h, 10, 20) # 返回在索引10 - 20 这个范围内h的索引, 没有则返回-1
name.index('ee') # 和find功能一样,只不过找不到时报错,而find找不到返回的时-1
name.count('ee') # 统计ee 在name中出现的次数
name.count('ee', 4) # 统计ee,在name中从第4个字符开始之后出现的次数
name.count('ee',4,7)# 统计ee ,在name中从第4个到第7个字符出现的次数
name.find('ee') # 找到在name中第一次出现的ee的位置(索引),后面也可以添加范围,和count一样
name.expandtabs(20) # 以20个长度为分割,如果字符长度没有20,就以空格补齐20长度,搭配\t,\n可以制作简易表格
name.swapcase() # 大写转小写,小写转大写
name.strip() # 去出字符串两边的空白(注意不是空格)
name.strip('ee') # 去除字符串中的ee(指定去除内容),注意是匹配两边的

table = 'username\tpassword\temail\nbenson\t123\tdf@qq.com\nbenson\t123\tdf@qq.com\n'
print(table.expandtabs(20))

>>>

username password  email
benson   123       df@qq.com
benson   123       df@qq.com

 
a="string1"  
b="string2"  
c1=a+b  # 1不适合大量字符串拼接  
  
c2="%s%s" % (a,b) # 2受顺序限制  
    
c3="{a}{b}" . format(a=a,b=b) # 3 未受顺序限制  
  
c4="".join([a,b])  # 4 只要申请一次内存  
print(c4)
请去除a字符串多次出现的字母,仅留最先出现的一个。例 'abcabb',经过去除后,输出 'abc'  
a = 'addsfwffdfdf' a_list
=list(a) #print set(a_list) #set 去重 无序 字典和集合不可排序 set_list=list(set(a_list)) #去重以后转化为list set_list.sort(key=a_list.index) #对去重后按照list原来排序 这个地方有点骚, index还能这样用? print ''.join(set_list) #拼接成字符串

  已知  a =  [1,2,3,6,8,9,10,14,17],请将该list转换为字符串,例如 '123689101417'.  

  a =  [1,2,3,6,8,9,10,14,17]  

  print str(a)[1:-1].replace(', ','')   # 注意replace后面逗号后面有空格

# 字典 d
d.pop(key)
del d[key] # 根据key 删除value
d.popitem() # 随机删除,脑残的方法
d.get(key)# 查找 不存在不报错
d[key] # 不存在 报错

# 字典的骚方法
d.setdefault(key, default=value) # 根据key查找对应的值,如果key存在,取出值,如果不存在,则添加这个key,并且设置默认值default
d.update(d2) # 将字典d2更新到字典d中
# fromkeys   该方法肾用 将第一个参数各个元素作为键,第二个参数整体作为值
iterable1 = "12" # 字符串 iterable2 = [1,2] # 列表 iterable3 = (1,2) # 元祖 iterable4 = {1:'one',2:'two'} # 字典 v1 = dict.fromkeys(iterable1,'字符串') v2 = dict.fromkeys(iterable2,'列表') v3 = dict.fromkeys(iterable3,'元祖') v4 = dict.fromkeys(iterable4,'字典') v5 = dict.fromkeys(iterable4) #value默认为None print(v1) print(v2) print(v3) print(v4) print(v5) 以上实例输出结果为: {'1': '字符串', '2': '字符串'} {1: '列表', 2: '列表'} {1: '元祖', 2: '元祖'} {1: '字典', 2: '字典'} {1: None, 2: None}

for k,v in d.items(): #会先把dict转成list,数据里大时莫用
    print(k,v)


zip函数

 

posted @ 2018-06-12 17:04  BensonChang  阅读(164)  评论(0编辑  收藏  举报