列表

  列表是Python中最具灵活性的有序集合对象类型。

  # 列表迭代和解析

  >>> res = [c*4 for c in 'Spam']

  >>> res

  ['SSSS', 'pppp', 'aaaa', 'mmmm'

  >>> res = []

  >>> for c in 'Spam':

  ... res.append(c*4)

  ...

  >>> res

  ['SSSS', 'pppp', 'aaaa', 'mmmm']

  >>> list(map(abs,[-1,-2,0,1,2]))

  [1, 2, 0, 1, 2]

  # 一般操作

  >>> L = [5,3,6,2,8]

  >>> sorted(L)

  [2, 3, 5, 6, 8]

  >>> L

  [5, 3, 6, 2, 8]

  >>> L.sort()

  >>> L

  [2, 3, 5, 6, 8]

  >>> L.insert(0,1)

  >>> L

  [1, 2, 3, 5, 6, 8]

  >>> L.reverse()

  >>> L

  [8, 6, 5, 3, 2, 1]

  >>>

  >>> del L[0]

  >>> L

  [6, 5, 3, 2, 1]

  >>> L.pop()

  1

  >>> L

  [6, 5, 3, 2]

  >>> L.remove(6)

  >>> L

  [5, 3, 2]

  '''

  原处修改列表:因为Python只处理对象引用,所以需要将原处修改一个对象与生成的一个新对象区分开来。

  因为在原处修改一个对象时,可能同时会影响一个以上指向它的引用。

  '''

  # 其他

  >>> L = ['already','got','one']

  >>> L

  ['already', 'got', 'one']

  >>> L[1:]=[]

  >>> L

  ['already']

  >>> L[0]=[]

  >>> L

  [[]]

  字典

  如果把列表看成是有序的对象集合,字典可以当成是无序的集合。主要区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

  >>> D = {'food':{'ham':1,'egg':2}}

  >>> D.get('food')

  {'ham': 1, 'egg': 2}

  >>> D2 = {'a':1,'b':2}

  >>> D.update(D2)

  >>> D

  {'food': {'ham': 1, 'egg': 2}, 'a': 1, 'b': 2}

  >>> D.pop('b')

  2

  >>> len(D)

  2

  >>> D

  {'food': {'ham': 1, 'egg': 2}, 'a': 1}

  >>> del D['a']

  >>> D

  {'food': {'ham': 1, 'egg': 2}}

  >>> D = {x:x*2 for x in range(10)}

  >>> D

  {0: 0, 1: 2, 2: 4, 3: 6, 4: 8, 5: 10, 6: 12, 7: 14, 8: 16, 9: 18}

  >>> D = {'spam':2,'ham':1,'eggs':3}

  >>> D['spam']

  2

  >>> D

  {'spam': 2, 'ham': 1, 'eggs': 3}

  >>> len(D)

  3

  >>> 'ham' in D

  True

  >>> list(D.keys())

  ['spam', 'ham', 'eggs']

  >>> list(D.values())

  [2, 1, 3]

  >>> D

  {'spam': 2, 'ham': 1, 'eggs': 3}

  >>> D['ham']=['grill','bake','fry']

  >>> D无锡看男科医院哪家好 https://yyk.familydoctor.com.cn/20612/

  {'spam': 2, 'ham': ['grill', 'bake', 'fry'], 'eggs': 3}

  >>> del D['eggs']

  >>> D

  {'spam': 2, 'ham': ['grill', 'bake', 'fry']}

  >>> D['brunch'] = 'Bacon'

  >>> D

  {'spam': 2, 'ham': ['grill', 'bake', 'fry'], 'brunch': 'Bacon'}

  >>> list(D.items())

  [('spam', 2), ('ham', ['grill', 'bake', 'fry']), ('brunch', 'Bacon')]

  >>> D2 = {'toast':4,'muffin':5}

  >>> D.update(D2)

  >>> D

  {'spam': 2, 'ham': ['grill', 'bake', 'fry'], 'brunch': 'Bacon', 'toast': 4, 'muffin': 5}

  >>> table = {'Python':'Guido van Rossum',

  ... 'Perl':'Larry Wall',

  ... 'Tcl':'John Ousterhout'}

  >>>

  >>> language = 'Python'

  >>> creator = table[language]

  >>> creator

  'Guido van Rossum'

  >>> for lang in table:

  ... print(lang,'\t',table[lang])

  ...

  Python Guido van Rossum

  Perl Larry Wall

  Tcl John Ousterhout

  # 三种方法来避免missing-key错误

  ... if (2,3,6) in Matrix:

  ... print(Matrix[(2,3,6)])

  ... else:

  ... print(0)

  ...

  0

  >>>

  >>>

  >>> try:

  ... print(Matrix[(2,3,6)])

  ... except KeyError:

  ... print(0)

  ...

  0

  >>>

  >>>

  >>> Matrix.get((2,3,4),0)

  98

  >>> Matrix.get((2,3,6),0)

  0

关于Python学习之 列表与字典的更多相关文章

  1. python学习之列表和字典

    列表 基本操作>>>len([1,3,4])3 >>>[1,2,3]+[4,5,6]    +号两边必须是相同类型[1,2,3,4,5,6] >>> ...

  2. Python学习三|列表、字典、元组、集合的特点以及类的一些定义

    此表借鉴于他人 定义 使用方法 列表 可以包含不同类型的对象,可以增减元素,可以跟其他的列表结合或者把一个列表拆分,用[]来定义的 eg:aList=[123,'abc',4.56,['inner', ...

  3. 【python学习笔记】4.字典:当索引不好用时

    [python学习笔记]4.字典:当索引不好用时 字典是python中唯一内建的map类型 创建: key可以为任何不可改变的类型,包括内置类型,或者元组,字符串 通过大括号: phonebook={ ...

  4. Python学习02 列表 List

    Python学习02 列表 List Python列表 List Python中的列表(List)用逗号分隔,方括号包围(comma-separated values (items) between ...

  5. python字符串、列表和字典的说明

    python字符串.列表和字典的说明 字符串.列表.字典 字符串的作用存储一段数据信息.例如 info = '我爱北京天安门' ,在调取的时候可以直接调取,灵活方便,print(info) 就可以把刚 ...

  6. Python学习笔记----列表、元组和字典的基础操作

    文章目录 一.列表的基本操作 1.1 修改列表中的某个数据 1.2 获取某个元素的返回值(返回的是索引) 1.3 在列表中插入新的元素 1.4 删除列表中的元素 1.5 +和* 二.内置的函数和方法 ...

  7. Python 1.2 列表和字典基础

    一. List创建.索引.遍历和内置增删函数 1.列表是Python的内置可变对象,由Array实现,支持任意类型的添加.组合和嵌套. L = [] # list declare L = [1, 1. ...

  8. [转载]Python 元组、列表、字典、文件

    python的元组.列表.字典数据类型是很python(there python is a adjective)的数据结构.这些结构都是经过足够优化后的,所以如果使用好的话,在某些area会有很大的益 ...

  9. Python学习(11)字典

    目录 Python 字典 访问字典中的值 修改字典 删除字典元素 字典键的特性 字典内置函数&方法 Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. ...

随机推荐

  1. Hash冲突的线性探测开放地址法

    在实际应用中,无论如何构造哈希函数,冲突是无法完全避免的. 开放地址法 这个方法的基本思想是:当发生地址冲突时,按照某种方法继续探测哈希表中的其他存储单元,直到找到空位置为止.这个过程可用下式描述:  ...

  2. Spark程序打包

    背景: spark程序,使用scala语言开发.整个项目中包含多个子模块,依赖包文件使用maven来管理. 打包: 方法一:使用artifacts来 选择模块,选择对应的主函数: 点ok保存. 由于s ...

  3. docker stack删除network失败

    现象描述 删除stack的时候没太多提示,但再启动相同的stack会报错,提示网络创建失败:随后使用network ls命令可以看到之前的network还在: 使用docker network rm还 ...

  4. MyBatis 返回 List mapperxml怎么写

    转: MyBatis 返回 List mapperxml怎么写? 原创 微wx笑 发布于2018-06-20 13:59:23 阅读数 10742 收藏 展开 有时候,我们不需要整个表的所有字段,而是 ...

  5. [译]在Python中,如何拆分字符串并保留分隔符?

    原文来源:https://stackoverflow.com/questions/2136556/in-python-how-do-i-split-a-string-and-keep-the-sepa ...

  6. java Random 抢红包算法

    红包有一个总金额和总数量,领的时候随机分配金额. 维护一个剩余总金额和总数量,分配时,如果数量等于1,直接返回总金额,如果大于1,则计算平均值,并设定随机最大值为平均值的两倍,然后取一个随机值,如果随 ...

  7. Python - Django - 中间件 process_request

    process_request 函数是中间件在收到 request 请求之后执行的函数 该函数的执行顺序是按照 settings.py 中中间件的配置顺序执行的 如果该函数返回 None,继续执行后面 ...

  8. 关于C#编写x86与x64程序的分析

    电脑硬件CPU可以分为x86与x64, x86的机器只能安装32位的操作系统,如XP, WIN7_86, x64的机器既可以安装32位的系统,又可以安装64位的系统,只是在x64的机器上安装32位的系 ...

  9. [LeetCode] 929. Unique Email Addresses 唯一的电邮地址

    Every email consists of a local name and a domain name, separated by the @ sign. For example, in ali ...

  10. git worktree 目录修复

    三种方式挨个尝试,1不行用2 2不行用3 1.拉取阶段失败 git worktree add -f -B xxx_branch ./xxx_branch origin/xxx_branch 强制拉取 ...