千纸鹤

  博客园  ::  :: 新随笔  ::  ::  :: 管理
  5 随笔 :: 70 文章 :: 0 评论 :: 9301 阅读

一、字典(Dict)

1、字典定义规则

   格式:{key键:value值} 即{key1:value,key2:value,,}  说明:key是唯一的,值是任意的类型  

    dict={}  print(dict,type(dict))  输出结果:{} <class 'dict'>

  dict={'name':'翠花','age':18}   print(dict,type(dict))  输出结果:{'name': '翠花', 'age': 18} <class 'dict'>

2、字典访问数据

a.通过键名访问

  dict={'name':'翠花','age':18}    print(dict['name'],dict['age'])  输出结果:翠花 18

b.通过get方式

  dict={'name':'翠花','age':18}    print(dict.get('name'))  输出结果:翠花

3、字典添加数据

  a.添加不存在的键名,直接输入值

  dict={'name':'翠花','age':18}

    dict['sex']='妖'

    print(dict)

4、字典修改数据

a.修改已存在的键名,直接修改值  

dict1={'name':'翠花','age':18}
dict1['name']='二狗'
print(dict1)

输出结果:{'name': '二狗', 'age': 18}

b.修改多个值

dict1={'name':'翠花','age':18}
dict2={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
dict1.update(dict2)
print(dict1)

输出结果:{'name': '翠花2', 'age': 18, 'sex': '女', 'height': '1.98'}

5、字典删除数据

  a.pop(键删除)

dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
dict.pop('name')
print(dict)

输出结果:{'age': 18, 'sex': '女', 'height': '1.98'}

  b.popitem()删除最后一个

dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
dict.popitem()
print(dict)

输出结果:{'name': '翠花2', 'age': 18, 'sex': '女'}

  c.del[键删除]

dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
del dict['name']
print(dict)

输出结果:{'age': 18, 'sex': '女', 'height': '1.98'}

6、字典获取数据

a.获取所有的键 keys

dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
print(dict.keys())

输出结果:dict_keys(['name', 'age', 'sex', 'height'])

b.获取所有的值 values

      dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
      print(dict.values())

      输出结果:dict_values(['翠花2', 18, '女', '1.98'])

c.获取所有的键值 items

      dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
      print(dict.items())

      输出结果:dict_items([('name', '翠花2'), ('age', 18), ('sex', '女'), ('height', '1.98')])

d.获取所有的键值 for循环    

dict={'name':'翠花2','age':18,'sex':'女','height':'1.98'}
for i,j in dict.items():
print(i,j)

输出结果:

name 翠花2
age 18
sex 女
height 1.98

7、字典创建数据

   a.通过fromkeys方式创建

    list1=['name','age','sex']

dict1={}
dict2=dict1.fromkeys(list1,'hello')
print(dict2)

等同于

list1=['name','age','sex']
dict2=dict.fromkeys(list1,'hello')
print(dict2)

输出结果: {'name': 'hello', 'age': 'hello', 'sex': 'hello'}

二、列表(List)

1、列表定义规则

[]进行标识,可以放任意数据类型(数字、字符串、元组、字典、列表、集合和bool值(True|flase))
list=[1,'6',(1,2,3),{'name':'翠花','age':18},[1,'6',False,(2,1,'3')],{1,2,3},False]
print(list[0:],type(list))

输出结果:[1, '6', (1, 2, 3), {'name': '翠花', 'age': 18}, [1, '6', False, (2, 1, '3')], {1, 2, 3}, False] <class 'list'>

2、列表访问数据

a.支持切片

左闭右开(0开始切片) 举例:list1=[1,'6',False,(2,1,'3')]

b.去头去尾

print(list[1:-1])  输出结果:['6', False] 

c.取单个数据

  print(list[1])   6

d.取多个数据

print(list1[1:3])  ['6', False]

print(list1[1:-1])  ['6', False]  

print(list[-3:-1])  ['6', False] 

3、列表添加数据

a.append()往末尾添加数据

list=[1,'6',False,(2,1,'3')]  list.append('9999')  print(list1)  输出结果:[1, '6', False, (2, 1, '3'), '9999']

b.insert()指定位置添加数据

list=[1,'6',False,(2,1,'3')]  list.insert(1,'www')  print(list)  输出结果:[1, 'www', '6', False, (2, 1, '3')]

c.extend()往末尾添加数据

list=[1,'6',False,(2,1,'3')]  list.extend('9999')  print(list1)  输出结果:[1, '6', False, (2, 1, '3'), '9', '9', '9', '9']

d.append()和extend()的区别

  append直接插入对象,extend拆分对象插入

4、列表删除数据

a.pop删除

<1>通过索引删除,并且删除会返回删除的数据

list=[1,'6',False,(2,1,'3')]  print(list.pop())  输出结果:(2, 1, '3')

<2>pop是可以不填参数,默认删除最后一个元素

list=[1,'6',False,(2,1,'3')]  list.pop()   print(list)  输出结果:[1, '6', False]

b.remove删除  

  <1>通过元素删除,不会返回删除的数据

  list=[1,'6',False,(2,1,'3')]  print(list.remove('6'))  输出结果:None

  <2>remove()里面一定要填数据,删除添的数据

  list=[1,'6',False,(2,1,'3')]  list.remove('6'). print(list)  输出结果:[1, False, (2, 1, '3')]

c.del删除

  <1>支持切片删除,删除一个元素

  list=[1,'6',False,(2,1,'3')]   del list[1]  print(list)  输出结果:[1, False, (2, 1, '3')]

  <2>支持切片删除,删除多个元素

  list=[1,'6',False,(2,1,'3')]   del list[1:3]  print(list)  输出结果:[1, (2, 1, '3')]

  <3>支持切片删除,删除整个元素

  list=[1,'6',False,(2,1,'3')]   del list1[::-1]  print(list)  输出结果:[]

5、列表修改数据

  a.找到元素即可修改

    list=[1,'2','55']   list[1]='www'   print(list)  输出结果:[1, 'www', '55']

  b.升序&降序&翻转

    升序:

       <1> list=[1,5,7,9,6,10]  list.sort()  print(list)  输出结果:[1, 5, 6, 7, 9, 10]

       <2> list=[1,5,7,9,6,10]  list.sort(reverse=False)  print(list)  输出结果:[1, 5, 6, 7, 9, 10]

    翻转:

       <1> <list=[1,5,7,9,6,10]  list.reverse()  print(list)>  输出结果:[10, 6, 9, 7, 5, 1]

       <2> list=[1,5,7,9,6,10]  print(list[::-1])  输出结果:[10, 6, 9, 7, 5, 1]

    降序:

      list=[1,5,7,9,6,10]  list.sort(reverse=True)  print(list)  输出结果:[10, 9, 7, 6, 5, 1]

6、列表统计重复元素

  a.返回一个list列表中出现次数最多的元素

    list=['a','c','g','f','a']  print(list.count('a'))  输出结果:2

7、列表复制元素

   list=['a','b','c']  print(list*2)  输出结果:['a', 'b', 'c', 'a', 'b', 'c']

 

三、集合(Set)

1、集合定义规则

  {},set()函数进行标识,特点:集合无序,没有重复

2、集合创建数据

  第一种方式:{}的形式创建集合数据 

  set={1,2,3} print(set,type(set))  输出结果:{1, 2, 3} <class 'set'>

  第二种方式:set()函数的形式创建集合数据

  set=set((1,2,3)) print(set,type(set))  输出结果:{1, 2, 3} <class 'set'>

  若创建空的集合[验证结果:创建空的集合,只能用set()函数]

    {}的形式创建空集合:set={} print(set,type(set))  输出结果:{} <class 'dict'>

    set()函数的形式创建空集合:set=set() print(set,type(set))  输出结果:set() <class 'set'>

3、集合特性说明

  a.集合:无序的

    set={'不','你好','hello','大哥'}  print(set)

    输出结果:{'你好', 'hello', '大哥', '不'}  {'hello', '大哥', '你好', '不'}  {'大哥', '你好', '不', 'hello'}

  b.集合:没有重复的

    set={1,2,3,4,4}  print(set)  输出结果:{1, 2, 3, 4}

4、集合访问数据

  由于集合是无序的,所以集合无法对元素进行访问

5、集合添加数据

set={'不','你好','hello','大哥'}
set.add('时间')
print(set)

输出结果:{'hello', '你好', '不', '时间', '大哥'}  {'你好', '时间', 'hello', '不', '大哥'}  {'hello', '时间', '大哥', '你好', '不'}

6、集合删除数据

  a.pop()任意删除

    set={'不','你好','hello','大哥'}  set.pop()  print(set)

    输出结果:{'大哥', '你好', '不'}  {'不', 'hello', '你好'}  {'你好', '不', '大哥'}

  b.remove()删除元素

set={'不','你好','hello','大哥'}  set.remove('你好')  print(set)

输出结果:{'不', '大哥', 'hello'}  {'hello', '大哥', '不'}  {'大哥', 'hello', '不'}

  c.discard(指定删除)

    set={'不','你好','hello','大哥'}  set.discard('110')  print(set)

    输出结果:{'hello', '你好', '不', '大哥'}  {'hello', '大哥', '不', '你好'}  {'不', '大哥', '你好', 'hello'}  不会报错的

7、集合的交集|并集|补集|差集

  a.交集  取重复的

    setA={1,2,3,4,5}  setB={5,6,7,8,9}  print(setA&setB)

    输出结果:{5}

  b.并集  去重

    setA={1,2,3,4,5}  setB={5,6,7,8,9}  print(setA|setB)

    输出结果:{1, 2, 3, 4, 5, 6, 7, 8, 9}

  c.补集  取a值中的所有元素和b值不重复的地方

    setA={1,2,3,4,5}  setB={5,6,7,8,9}  print(setA-setB)

    输出结果:{1, 2, 3, 4}

  d.差集  不取重复的

    setA={1,2,3,4,5}  setB={5,6,7,8,9}  print(setA^setB)

    输出结果:{1, 2, 3, 4, 6, 7, 8, 9}

 

数据类型的转换(tuple list)

  元组转为列表:

    tup1=(1,'er')  print(list(tup1),type(list(tup1)))    

    输出结果:[1, 'er'] <class 'list'>

  列表转为元组:

    list1=[1,'2']    print(tuple(list1),type(tuple(list1)))  

    输出结果:(1, '2') <class 'tuple'>

数据类型的转换(dict string)

  字典转成字符串:

    dict1={'name':'qiushui','age':18}    print(str(dict1),type(str(dict1)))  

    输出结果:{'name': 'qiushui', 'age': 18} <class 'str'>
  字符串转为字典:

    dict1="{'name':'qiushui','age':18}"    print(eval(dict1),type(eval(dict1)))  

    输出结果:{'name': 'qiushui', 'age': 18} <class 'dict'>

posted on   隆江猪脚饭  阅读(51)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示