1.list列表

list是一种可变的有序的列表,可以随时添加和删除其中的元素。

其格式如下:list-name=[element1,element2,....]

 >>> nums = ['', '', '']
>>> nums
['', '', '']

注:若为nums=[ ],则表示空!

1.1获取list元素的个数:len(list-name)

 >>> len(nums)
3

1.2通过索引访问元素(索引从0开始,倒着数从-1开始)

 >>>nums[0]
'' >>>nums[-2]
''

1.3添加元素

1.3.1在末尾添加元素:list-name.append(value)

 >>> nums.append('')
>>> nums
['', '', '', '']

1.3.2在指定位置添加元素:list-name.insert(索引,value)

 >>> nums.insert(1, '1.5')
>>> nums
['1', '1.5', '2, '3', '4']

1.4删除末尾的元素:list-name.pop()

 >>> nums.pop()
>>> nums
['1', '1.5', '2, '3']

1.5删除指定位置的元素:list-name.pop(索引)

 >>> nums.pop(1)
>>> nums
['', '2, '3']

1.6替换元素:list-name[索引]=value

 >>> nums[1] = '1.5'
>>> nums
['1', '1.5', '']

1.7元素类型可以不一致,并且可以嵌套

 >>> p = ['', '']
>>> s = ['a', 'b', p, 'c'] 

2.tuple元组

tuple和list非常类似,但是tuple一旦初始化就不能修改。

其格式如下:tuple-name=(element1,element2,...)

 # 空元组
>>>tup1 = ()
# 单个元素需要增加一个‘,’
>>>tup2 = (1,)
>>>print tup1, tup2
() (1,)

一个可变的tuple:

 >>> t = ('a', 'b', ['A', 'B'])
>>> t[2][0] = 'X'
>>> t[2][1] = 'Y'
>>> t
('a', 'b', ['X', 'Y'])

注:这里嵌套了list列表,由于改变的是list中元素,与tuple无关.

3.dict字典

dict全称dictionary(字典),在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。

dict的key必须是不可变对象。

在Python中,字符串、整数等都是不可变的,可以用作key。

其格式如下:dict-name={key1:value1, key2:value2, ...}

 >>> age = {'tom': 13, 'jack': 14, 'jim': 15}
>>> age
{'tom': 13, 'jack': 14, 'jim': 15}

3.1查看元素: dict-name[key] / dict-name.get(key)

 #方式一
>>>age['Tom']
13
#方式二
>>>age.get('Tom')
13

注:当key不存在时,方式一将报错;方式二则返回值none.

3.2更新元素:dict-name[key]=value

 >>> age['tom'] = 10
>>> age.get('tom')
10

3.3删除元素:dict-name.pop(key) / del dict-name[key]

 >>> age.pop('tom')
>>> age
{'jack': 14, 'jim': 15}

3.4添加新元素

 >>> age['jerry'] = 17
>>> age
age = { 'jack': 14, 'jim': 15, 'jerry': 17}

python字典内置了一下函数和方法:

4.set集合

set和dict类似,它是一组存储key无序的集合,且不存储value;由于key不能重复,所以在set中无重复的key。

创建一个set,需要提供一个list,或者提供一个字符串:

其格式如下:set-name=set( [list] / str )

 >>> s = set([1, 1, 2, 2, 3, 3])
>>> s
{1, 2, 3} >>> s1 = set('abcabc')
>>> s1
{'a', 'c', 'b'}

4.1添加元素:set-name.add(key) / set-name.update(seq)

 >>> s.add(4)
>>> s
{1, 2, 3, 4}
 >>>set1 = set(['', '', ''])
>>>set2 = set('')
>>>set1.update(set2)
>>>set1
{'', '', '', '', ''}

4.2 移除元素:set-name.remove(key) / setname.pop()

注:pop()会删除任意一个对象

 >>> s.remove(4)
>>> s
{1, 2, 3}

4.3操作符:|,&,-,^

 set1 = set(['', '', ''])
set2 = set('')
# 并集union()
print set1 | set2
# 交集intersection()
print set1 & set2
# 补差difference()
print set1 - set2 # {'1', '2'}
# 对称拆分symmetric_difference()
print set1 ^ set2 # 没有'3'

5.切片

当我们需要取list或者tuple中一块内容时,使用循环遍历取值十分麻烦,为此python提供了切片功能。

格式如下:list-name[索引1:索引2 : 步长]

注:从索引1开始,到索引2结束,但是不包含索引2. 步长为索取元素之间的间隔.

现有list列表如下: L=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

当取索引为0-2的元素时,可以使用L[0:3].

当有一个索引为0或-1还可以省略,例如L[:3]L[-2:]L[:].

当取索引为6-8的元素时,可以使用L[-4:-1].

当取第1,3,5个元素时,可以使用L[0:5:2].

注:对于tuple的操作,同样适用上述规则.

另外,字符串也可以看成一个list,此时一个字符看成一个元素,操作结果仍然是字符串。

 >>> 'ABCDEFG'[:3]
'ABC'

6.其他操作符

使用+,×,in&not in对列表、元组等进行运算.

 myList = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

 #in & not in
for i in myList:
print i i = 6
if i not in myList:
print 'not in'
else:
print 'in' # +
tempList = [10, 11, 12, 13]
# myList.extend(tempList)
# print myList
# print myList+tempList [0,1,...,13] # *
tup3 = (2, 3)*2
print tup3 #(2, 3, 2, 3)

python中list、tuple、dict、set的使用的更多相关文章

  1. Python中list,tuple,dict,set的区别和用法

    Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个内置数据类型功不可没,他们即是list, tuple, dict, set.这里对他们进行一个简明的总结. List ...

  2. Python中list,tuple,dict,set的区别和用法(转)

    原文地址:http://www.cnblogs.com/soaringEveryday/p/5044007.html Python语言简洁明了,可以用较少的代码实现同样的功能.这其中Python的四个 ...

  3. python中list/tuple/dict/set的区别

    序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推.Python有6个序列的内置类型,但最常见的是列表list和元组t ...

  4. python中list,tuple,dict,set等深浅拷贝的问题记录

    对于字典.元祖.列表 而言,进行赋值.浅拷贝和深拷贝时,其内存地址的变化是不同的. 1.赋值 赋值,只是创建一个变量,该变量指向原来内存地址,如: 1 2 3 n1 = {"k1" ...

  5. python中的字典(dict),列表(list),元组(tuple)

    一,List:列表 python内置的一种数据类型是列表:list.list是一种有序的数据集合,可以随意的添加和删除其中的数据.比如列出班里所有的同学的名字,列出所有工厂员工的工号等都是可以用到列表 ...

  6. python中的list, dict, tuple以及collections模块的基本用法

    1.关于list的一些基本用法 # 创建没有初值的列表 list1=[] # 创建有初值的列表 list2=['this','is','a','list'] # 创建给定长度但初值不确定的列表 lis ...

  7. Python容器--list, tuple, dict, set

    ## Python 中有四种用于存放数据的序列--list, tuple, dict, set ## list 列表 - 可以存放任意类型数据的有序序列 - 列表可以由零个或多个元素组成,元素之间用逗 ...

  8. python中list和dict

    字典(Dictionary)是一种映射结构的数据类型,由无序的“键-值对”组成.字典的键必须是不可改变的类型,如:字符串,数字,tuple:值可以为任何python数据类型. 1.新建字典 1 2 3 ...

  9. python 中的 list dict 与 set 的关系

    转自: http://www.cnblogs.com/soaringEveryday/p/5044007.html list arraylist 实现(数组) List 通过内置的 append()方 ...

  10. python中json与dict之间转换

    Python之dict(或对象)与json之间的互相转化 在Python语言中,json数据与dict字典以及对象之间的转化,是必不可少的操作. 在Python中自带json库.通过import js ...

随机推荐

  1. springboot搭建环境整合jsp页面整合mybatis

    1.pom文件依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www ...

  2. pyqt笔记1模块 信号和插槽

    资料 PyQt5图形界面编程 PyQt5指南 模块 PyQt5本身拥有超过620个类和6000函数及方法. QtCore模块涵盖了包的核心的非GUI功能,此模块被用于处理程序中涉及到的 time.文件 ...

  3. DOM中的outerHTML,innerHTML,outerText,innerText的区别

    --转自http://blog.163.com/yw_0721/blog/static/7164579720102932157759/ 简单的说innerHTML和outerHTML.innerTex ...

  4. linux 基础命令(12月25日笔记)

    1.  cp指令指令:cp          (copy,复制)作用:复制文件/文件夹到指定的位置语法:#cp [-r] 被复制的文档路径 文档被复制到的路径选项:         -r:recurs ...

  5. Java 数据库篇

    一.简易封装JDBC工具类: package com.jackie.MyBatis.main; import java.sql.Connection; import java.sql.DriverMa ...

  6. snakemake使用笔记

    snakemake是一个用来编写任务流程的工具,用python编写的,因此其执行的流程脚本也比较通俗易懂,易于理解. 一.从一个简单的例子开始 1.安装snakemake 安装snakemake的方法 ...

  7. [osg][osgEarth][osgGA][原] EarthManipulator------基于oe的相机漫游器(浅析)

    知识基础:osg漫游器基础 class OSGEARTHUTIL_EXPORT EarthManipulator : public osgGA::CameraManipulator EarthMani ...

  8. 力扣(LeetCode)453. 最小移动次数使数组元素相等

    给定一个长度为 n 的非空整数数组,找到让数组所有元素相等的最小移动次数.每次移动可以使 n - 1 个元素增加 1. 示例: 输入: [1,2,3] 输出: 3 解释: 只需要3次移动(注意每次移动 ...

  9. js几个小技巧和坑

    蝴蝶书看了,也知道充满了毒瘤和糟粕,但该用还是得用. 实际写了几天,小技巧记录下来.都是在py里有直接答案,不会遇到的问题,没想到js里这么费事. 还是要多读<ES6标准入门> 1判断ob ...

  10. lua闭包实现迭代器遍历数组

    --实现访问数组的迭代器 function visit(t) return function() i = i + return t[i] end end --要访问的数组 ,,,} itor = vi ...