ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python基础3-列表,元组,字典

2022-01-06 22:33:31  阅读:112  来源: 互联网

标签:info python li key 列表 元组 字典


  • 数字和字符串的作业反馈

  • int()转换为数字,str()转换为字符串,bool()转换为布尔值
  • 只要能被for循环获取,就是可迭代对象
  • str,int是类型,s1= "alex",即根据str类型创建一个对象s1。
  • pycharm中code-reformat code即可帮助更正代码的正确格式
  •  列表

  • 深灰魔法
  • list是类,特征是[],逗号分隔每个元素,列表可以嵌套任何数据类型。
  • 索引取值,0开始。索引修改。索引删除,del_li[ x],即删除li的下标为x的元素
  • 切片取值,[],左闭右开。切片修改,切片删除
  • 列表的内容可以修改,因为列表是链表,只需要改变存储的下一个地址即可
  • in操作,not in操作
  • li[4][1][0],找到列表第4个元素的第1个元素的第0个元素
  • 字符串可以转换为列表,数字不能转换为列表
  • 列表转换成字符串:
  • 既有数字又有字符串的情况,需要自己写for循环一个一个处理
  • 如果只有字符串的情况,v = "".join(li),既可以将列表转换为字符串
  • 灰魔法,list中提供的方法
  • li对象调用append方法。li.append(5),在列表li后追加一个元素5
  • li.extend([9898,"不得了"]),将可迭代对象的每一个元素加至列表li中。iterable是可迭代对象,列表和字符串是可迭代对象
  • li.clear(),清空列表
  • v = li.copy(),将列表li浅拷贝至列表v中
  • li.coount(22),计算元素在列表li中出现的次数
  • li.index(22),在列表li中检索22所在位置,左边优先,可以限定起始位置和终止位置
  • li.insert(0,99),在列表li的索引位置0加入元素99
  • v=li.pop(),获取那个列表li中被删除的值,按照索引删除,可以指定删除的索引,默认删除最后一个
  • li.remove(22),删除列表中的指定值,左边优先
  • 删除列表的方式,pop方式,remove方式,del li[0]方式,del li[7:9]方式,clear方式
  • li.reverse(),列表反转
  • li. sort(reverse = true),将列表元素从大到小进行排序
  • 元组

  • 深灰魔法
  • tuple,类,(11,22,33,44)。对列表的二次加工。元组的一级元素不可修改,不能增加或删除,但是如果一级元素的列表,则列表的元素可以修改
  • 创建元组的时候,在右括号前加逗号,不报错,一眼认出是元组,(11,22,"alex",)
  • 索引取值
  • 切片取值
  • 支持for循环,也是可迭代对象
  • 元组,列表,字符串可以互相转换,元组只有字符串时,可以用join。如果有数字和字符串,要自己写for循环
  • 元组也是有序的
  • v = tu[3][0],获取元组中索引为3的元素中索引为0的元素
  • 灰魔法
  • tu.count(22),获取指定元素在元组中出现的次数
  • tu.index(22),获取指定元素在元组的索引位置
  • 字典

  • info = { "k1": "v1","k2":"v2"} ,每个元素称为键值对
  • 类,dict,{}。key不能取列表/字典,其余均可以。value可以是任意数据类型,可以嵌套多层。但是key不能重复,如果重复,则后边的失效
  • 字典是按照哈希值保存的,key不论是什么类型,都会被转换为哈希值。列表等不能被转换为哈希值,所以不能作文key
  • 字典是无序的,一个字典每次打印时,显示顺序不一定
  • v = info[key],key做为索引来取值
  • v = info['k3'][5]['kk3'][0],找到多层嵌套的元组第一个元素
  • 因为无序的,所以不能用切片
  • del info['k1'],删除字典info中key为'k1'的键值对
  • for k,v in info.items()       info.keys    info.values,依次是获取字典info的键值对(key给k,对应的value给v),key,value
  • not in和in也能用,v = "k1" in dic,默认是循环key
  • 灰魔法
  • info.clear(),清空字典
  • info.copy(),浅拷贝
  • 静态方法,dict.fromkeys(["k1",123,"999"],123)建立一个以k1,123,999为key的字典,指定统一的value值123
  • v = dic.get('k11111',111),从字典中获取key为k1111的value,如果不存在,则返回111。
  • keys,items,values,以集合的形式返回字典的相应参数
  • v = dic.pop('k1',999),在dic中删除key为'k1'的键值对,同时v获取到对应的value。如果删除失败,则返回999
  • v = dic.popitem(),随机删除字典键值对,但是v拿到的是键值对
  • v = dic.setdefault('k1111','123'),在字典dic中设置键值对,如key已经存在,则不设置,v拿到已有值。如果key不存在,则设置,v拿到新值
  • dic.update({'k1':'1111','k3':123}),将已有key的value更新,将未有key的键值对新增。
  • dic.update(k1= 123, k3= 345,k5 = "asdf"),功能与上边相同
  • 布尔值

  • 空字典'None',空列表[],空元组(),空字典{} , 数字0  都是false

 

标签:info,python,li,key,列表,元组,字典
来源: https://www.cnblogs.com/caesarone/p/15772890.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有