python基础学习-集合数据类型
来源:互联网 发布:mysql创建用户命令 编辑:程序博客网 时间:2024/05/17 04:53
python语言本身提供除有基本数据类型外,还有相应的简单集合数据类型,常用的有列表,元组,集合,字典。当然也可以通过模块使用第三方的数据结构,比如说有矩阵,树,队列,堆栈,图等等。
其中列表是一种动态数据结构,在数据结构中体现为线性表或者链表。其中的动态这个词很重要,像元组和基本数据类型就是非动态的,因为在对待按值传递和按引用传递方面是如果是动态的就按引用传递,如果是非动态的就按值传递。当然,如果想动态也按值传递和话可以利用python的深copy特性。关于python的按值传递和按引用传递,在我的另一篇文章
python基础学习-按值传递和按引用传递 中有相关的说明和解释,建议好好看看,这个真的超级重要。
python列表操作
Python 2.7.13 (default, Jan 19 2017, 14:48:08)
[GCC 6.3.0 20170118] on linux2
Type "copyright", "credits" or "license()" for more information.
>>> numbers = [1,2,3,4,5,"6",[5,4,3,2,1]]#创建一个列表,其中包含了5个int和一个字符串以及另一个列表
>>> numbers
[1, 2, 3, 4, 5, '6', [5, 4, 3, 2, 1]]
>>> numbers.append(7)
>>> #python的列表中的元素是可以为任意类型的,并且同一个列表中的元素可以是不同类型的
>>> #向列表的末尾添加一个元素
>>> numbers
[1, 2, 3, 4, 5, '6', [5, 4, 3, 2, 1], 7]
>>> numbers.insert(0,0)
>>> #在特定位置插入一个元素
>>> numbers
[0, 1, 2, 3, 4, 5, '6', [5, 4, 3, 2, 1], 7]
>>> numbers[7] = 8
>>> #修改某个位置上的元素
>>> numbers
[0, 1, 2, 3, 4, 5, '6', 8, 7]
>>> numbers.insert(0,0)
>>> numbers
[0, 0, 1, 2, 3, 4, 5, '6', 8, 7]
>>> numbers.remove(0)#移除第一个匹配的元素
>>> numbers
[0, 1, 2, 3, 4, 5, '6', 8, 7]
>>> nums0 = [1,2,3]
>>> nums1 = [4,5,6]
>>> #两个列表连接起来
>>> nums2 = num0+num1
Traceback (most recent call last):
File "<pyshell#20>", line 1, in <module>
nums2 = num0+num1
NameError: name 'num0' is not defined
>>> nums = nums0+nums1
>>> nums
[1, 2, 3, 4, 5, 6]
python的列表和for循环的高级应用
>>> nums = [1,2,3,4,5]
>>> def test(i):
return i+1
>>> anotherNums = [test(item) for item in nums]
>>> anotherNums
[2, 3, 4, 5, 6]
>>>
元组是个神奇的东西
两种创建元组的方式
>>> t = 1,2,3
>>> t
(1, 2, 3)
>>> t = (1,2,3)
>>> t
(1, 2, 3)
>>>
元组解包
>>> a,b,c = t
>>> a
1
>>> b
2
>>> c
3
>>> (a,b,c) = t
>>> a
1
>>> b
2
>>> c
3
集合操作
>>> s1 = {1,2,3}
>>> s2 = {2,3,4}
>>> #集合并集
>>> s1 | s2
set([1, 2, 3, 4])
>>> #集合交集
>>> s1 & s2
set([2, 3])
>>> #集合差集
>>> s1 - s2
set([1])
>>> #集合对称差集
>>> s1 ^ s2
set([1, 4])
>>> #集合添加
>>> s1.add(5)
>>> s1
set([1, 2, 3, 5])
>>> s1.update({6,7,8})
>>> s1
set([1, 2, 3, 5, 6, 7, 8])
>>> #集合移除
>>> s1.remove(1)
>>> s1
set([2, 3, 5, 6, 7, 8])
python中的字典其实就是其他语言中的表
>>> dic = {1:1,2:2,3:3}
>>> dic
{1: 1, 2: 2, 3: 3}
>>> dic[1]
1
>>> for (a,b) in dic.items():
print a,",",b
1 , 1
2 , 2
3 , 3
>>> dic[1] = 100
>>> dic
{1: 100, 2: 2, 3: 3}
>>> del dic[1]
>>> dic
{2: 2, 3: 3}
字典的基本操作比较简单
- python基础学习-集合数据类型
- python基础学习-数据类型
- python 基础学习 集合
- python基础2之数据类型---集合
- python学习之基础数据类型
- Python--基础学习--基本数据类型
- python基础学习三:数据类型
- python基础学习之集合
- 【python学习笔记】python基础之数据类型
- Python基础——核心数据类型_集合
- python基础学习一 数据类型和变量
- Python基础学习----数据类型,字符串,内置数据结构
- python基础学习 数据类型——拾遗
- python基础学习(二):数据类型
- python学习(1)基础及数据类型
- python基础学习二——数据类型
- 【学习笔记】Python基础-数据类型与变量
- python基础学习(4)—数据类型
- mysql 行锁小技巧 索引对行锁的影响 批量update的时候容易出现死锁
- 收藏一下地址
- 关于 python 的 IDE
- Redis单机版安装图文教程
- [leetcode]86. Partition List@Java解题报告
- python基础学习-集合数据类型
- 最全的 CSS2.1 和 CSS3+ 的区别一览
- VMware 安装 Ubuntu 详细步骤
- VS之VC++设置bin路径
- ##Angular
- Android中intent启动Activity中intent.setFlags()的作用
- lintcode:落单的数
- 从超级菜鸟变成Linux系统高手
- GitLab 升级 502 Error executing action `run` 'ruby_block[resource: /var/opt/gitlab/git-data/repositor