python 五大核心数据类型总结之字符串/列表/字典/元祖/集合总结

1.主要区别

2.序列的相同处理方法(字符串,列表和元组都称为序列)

 注:通过偏移量访问数据时S[-i] = S[len(S)-i]     ; S[i:j] :取出在S中偏移量为i,直到但不包含偏移量为j的内容

3.对象类型之特有方法

(1)字符串 (字符串委S = 'I,LOVE,PYTHON')

    

方法详解举例
string.find(str, beg=0, end=len(string))检测 str 是否包含在 string 中,如果 beg 和 end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1S.find(V,0,4) => 4
string.replace(str1, str2,  num=string.count(str1))把 string 中的 str1 替换成 str2,如果 num 指定,则替换不超过 num 次.

S.replace(‘P’,'F') => 

S = 'I,LOVE,FYTHON'

string.split(str="", num=string.count(str))以 str 为分隔符切片 string,如果 num有指定值,则仅分隔 num 个子字符串

S.split(',') 

得到一个列表:['i' , 'LOVE' ,'PYTHON']

1.string.strip([chars])

 

2.string.rstrip([chars])

 

3.string.lstrip([chars])

1.在 string 上执行 lstrip()和 rstrip()

 

2.返回删除 string 字符串末尾的指定字符后生成的新字符串

 

3.返回删除 string 字符串头部的指定字符后生成的新字符串

 

1.string.upper()

2.string.lower()

3.string.capitalize()

4.string.tittle()

1.将字符串的小写字母转换为大写字母

2.将大写字母转换为小写

3.将字符串中字母首字母大写其余小写

4.将字符串中字母每个单词的首字母大写其余小写

 

1.string.alpha()

 

2.string.isalnum()

 

3.string.isdecimal()

 

4.string.isdigit()

 

5.string.isnumric()

 

6.string.isspace()

 

1.如果 string 至少有一个字符并且所有字符都是字母则返回 True,否则返回 False

2.如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False

3.如果 string 只包含十进制数字则返回 True 否则返回 False.

4.如果 string 只包含数字则返回 True 否则返回 False.

5.如果 string 中只包含数字字符,则返回 True,否则返回 False

 

6.如果 string 中只包含空格,则返回 True,否则返回 False

 

1.ord(char)

2.chr(number) 

字符串代码相互转化

1.字符=>ASCLL值

2.ASCLL值=>字符

ord('s') => 115

chr(115) => 's'

   

(2)列表 (L =[0,'python',[520]])

方法详解举例
L.append(obj)  append 用于将一个对象附加到列表末尾。只是修改原列表,不会返回修改过后的新列表 
L.clear()  用于清空列表的内容 
L.copy()

 有区别宇常规的L1 = L 常规的赋值复制改变L1列表的同时,原列表也跟着改变,这种复制方式只是相当于给同一个列表重新命名而已。

  L.copy形成的是两个互不影响的列表,其作用类似于L[:]或者 list(L)

 
L.extend(obj)extend能够将多个值附加到列表末尾,这个方法类似于拼接,注意这里没有返回值,并且 extend 会直接修改被扩展的序列.

L.exetnd([1,2,3])

=>L = [0,'python',[520],1,2,3]

L.insert(index, obj)将obj(对象)插入索引为index 列表

L.insert(1,'fython')

=> L = [0,'fython','python',[520]]

L.pop([index])默认是从列表中删除列表中最后一个元素,并将其返回 当index非零时 删除索引值

L.pop() 值为[520]

=> L =>[0,'python']

 

L.pop(2)

=>[0,'python']

L.remove(value)从左到右顺序删除第一个为指定值的元素,不返回值

L.remove(0)

=>L = ['python',[520]]

L.reverse()按相反的顺序排列列表中的元素,修改列表 
L.sort()

  sort 用于对列表就地排序。就地排序就是说对原来的列表进行修改,使其元素按顺序排列,而不是返回排序后的列表的副本。

  高级排序:方法 sort 有接受两个可选参数 key 和 reverse。这两个参数通常是按名称来指定的,称为关键字参数。key 就是指定需要按照什么属性来进行排序,而 rerverse 是指定是否要按照相反顺序来进行排序。

>>> a = ['word','aa','hello','waq']
>>> a.sort(key = len)
>>> a
['aa', 'waq', 'word', 'hello']

 

>>> a = [3,1,4,5,2]
>>> a.sort(reverse = True)
>>> a
[5, 4, 3, 2, 1]
 

(3) 字典(D = {‘name’:'fython','age':18})

      

方法详解举例

增:

 1.D["key"] = value            2.D.setdeafult("key","value")

1. 字典中没有key就添加,有key就覆盖

 

2.字典中没有key就添加,有key也不变

 

删:

1.dic.pop("key")     

2.dic.clear()       

3.del dic["key"]       

4.dic.popitem()     

 

 

 

1.根据key值删除(有返回值)

2.清空字典

3.删除字典/键值对

4. 随机删除键值对

 

 

 

改:

1.D["key"] = value     

2.D.update(D1)     

1. 将字典中key对应值修改成value

2.将字典dic2中的键值对覆盖添加到dic1,dic1原有的键值对不变.注:类似list得extend()方法,如果两个字典存在相同的键,会更新为最新的值

>>> dict1 ={'name':'hexo','sex':'男'}
>>> dict2 = {'name':'花','sex':'女'}
>>> dict2.update(dict1)
>>> print(dict1,"\n",dict2)
运行结果:
{'name': 'hexo', 'sex': '男'} 
{'name': 'hexo', 'sex': '男'}

查:

1.dic["key"]                 

2.dic.get("key",k)      

1.根据key值查对应的value值

2.根据key值查对应的value值,如果没有查到key值,则默认返回k;若没有设置k,则返回None

 
1.dict.keys()
2.dict.values()
3.dict.items()

 

1.返回一个包含字典所有KEY的列表;

2.返回一个包含字典所有value的列表;

3.返回一个包含所有(键,值)元祖的列表;

 

 
遍历:
for k in dic:   
    print(k,dic[k])
#循环打印 key + values
 

(4)元组

元组,没有方法,序列的通用方法元组均适用,注当创建单个元素元组时,要在后面加’,‘,如T = (123,)

(5)集合

集合的方法
方法详解举例
S.add(value)将value值加入到集合S中 去重添加 

1.S.remove(value)

 

2.S.discard(value)

1.将value值从S中删除,若value值不在S中将引发异常

2.将value值从S中删除,若value值不在S中,也没事儿

 
S.pop(value)移除S中value值 
S.clear()清空集合S 

 图片来源:https://blog.csdn.net/jasonLee_lijiaqi/article/details/79307119

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不会飞的熊猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值