【277】◀▶ Python 列表/元组/字典说明
目录:
列表截取很灵活,下面通过例子说明:
还可以通过 a[0:8:2] 来截取
>>> a
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> a[-1] # 最后一个元素
9
>>> a[-2] # 倒数第二个
8
>>> a[:3] # 第一个到索引为(3-1)的,不包括3
[0, 1, 2]
>>> a[-3:] # 倒数第三个到最后
[7, 8, 9]
- Python的元组与列表类似,不同之处在于元组的元素不能修改。
- 元组使用小括号,列表使用方括号(例如记录坐标点,a = (123, 37))。
- 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
- 获取单个要素通过方括号,例如 dimension[0]
- 字典是另一种可变容器模型,且可存储任意类型对象(类似 HTML 和 XML 的标签与值)。
- 字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 ,格式如下所示:
- d = {key1 : value1, key2 : value2 }
代码实现:按照数字排序,获取前四位数字对应的分类的数目
>>> films_results = [128, 118, 16, 18, 20, 130]
>>> films_class = ['Action', 'Action', 'Romance', 'Romance', 'Romance', 'Action'] >>> sortedIndices = np.argsort(films_results)
>>> sortedIndices
array([2, 3, 4, 1, 0, 5], dtype=int64) >>> k=4
>>> classCount = {} >>> for i in range(k):
voteLabel = films_class[sortedIndices[i]]
classCount[voteLabel] = classCount.get(voteLabel, 0) + 1 >>> classCount
{'Romance': 3, 'Action': 1}
dict.get(key,default=None),字典的get()方法,返回指定键的值,如果值不在字典中返回默认值。
dict.fromkeys(iterable, value=None, /): Create a new dictionary with keys from iterable and values set to value.
用来创建一个新的字典,keys 保留 iterable 的,值按照 value。
列表是Python中最基本的数据结构。列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。列表的数据项不需要具有相同的类型。
Python 的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5 );
tup3 = "a", "b", "c", "d";
字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:
d = {key1 : value1, key2 : value2 }
键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
本文以 列表(List) 为例。
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = [1, 2, 3, 4, 5]
list3 = ["a", "b", "c", "d", "e"] print list1
print list2
print list3 print list1[0]
print list2[2:]
print list3[1:4]
********** RESULTS **********
['physics', 'chemistry', 1997, 2000]
[1, 2, 3, 4, 5]
['a', 'b', 'c', 'd', 'e'] physics
[3, 4, 5]
['b', 'c', 'd']
list1 = ['physics', 'chemistry', 1997, 2000]
print list1[1] list1[1] = 'math'
print list1[1]
********** RESULTS **********
chemistry
math
可以使用 del 语句来删除列表的的元素,如下实例:
list1 = ['physics', 'chemistry', 1997, 2000]
print list1
print list1[1] del list1[1]
print list1
print list1[1]
********** RESULTS **********
['physics', 'chemistry', 1997, 2000]
chemistry
['physics', 1997, 2000]
1997
列表对 + 和 * 的操作符与字符串相似。+ 号用于组合列表,* 号用于重复列表。如下所示:
| Python 表达式 | 结果 | 描述 |
|---|---|---|
| len([1, 2, 3]) | 长度 | |
| list[:2]、list[-3:]、list[:] | 灵活截取 | |
| [1, 2, 3] + [4, 5, 6] | [1, 2, 3, 4, 5, 6] | 组合 |
| ['Hi!'] * 4 | ['Hi!', 'Hi!', 'Hi!', 'Hi!'] | 重复 |
| 3 in [1, 2, 3] | True | 元素是否存在于列表中 |
| 4 not in [1, 2, 3] | True | 元素是否不存在于列表中 |
| for x in [1, 2, 3]: print x, | 1 2 3 | 迭代 |
| [i+1 for i in range(0, 5)] | 通过已有列表建立新列表 | |
>>> a |
||
list1 = ['physics', 'chemistry', 1997, 2000]
print len(list1) list2 = list1 + list1
list3 = list1 * 3 print list2
print list3 if(1997 in list1):
print list1
else:
print list2 for x in list1:
print x
********** RESULTS **********
4 ['physics', 'chemistry', 1997, 2000, 'physics', 'chemistry', 1997, 2000]
['physics', 'chemistry', 1997, 2000, 'physics', 'chemistry', 1997, 2000, 'physics', 'chemistry', 1997, 2000] ['physics', 'chemistry', 1997, 2000] physics
chemistry
1997
2000
Python包含以下函数:
| 序号 | 函数 |
|---|---|
| 1 | cmp(list1, list2) 比较两个列表的元素 说明:list1 与 list2 一样,返回值为 0 |
| 2 | len(list) 列表元素个数 |
| 3 | max(list) 返回列表元素最大值 |
| 4 | min(list) 返回列表元素最小值 |
| 5 | list(seq) 将元组转换为列表 |
Python 包含以下方法:
| 序号 | 方法 |
|---|---|
| 1 | list.append(obj) 在列表末尾添加新的对象 |
| 2 | list.count(obj) 统计某个元素在列表中出现的次数 |
| 3 | list.extend(seq) 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) |
| 4 | list.index(obj) 从列表中找出某个值第一个匹配项的索引位置 |
| 5 | list.insert(index, obj) 将对象插入列表 |
| 6 | list.pop(obj=list[-1]) 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 |
| 7 | list.remove(obj) 移除列表中某个值的第一个匹配项 |
| 8 | list.reverse() 反向列表中元素 |
| 9 | list.sort([func]) 对原列表进行排序 |
【277】◀▶ Python 列表/元组/字典说明的更多相关文章
- python3笔记十八:python列表元组字典集合文件操作
一:学习内容 列表元组字典集合文件操作 二:列表元组字典集合文件操作 代码: import pickle #数据持久性模块 #封装的方法def OptionData(data,path): # ...
- Python列表,元组,字典,序列,引用
1.列表 # Filename: using_list.py # This is my shopping list shoplist=["apple", "mango&q ...
- Python 列表,元组,字典
0)字符串切片 py_str = 'python' >>>py_str[0] #取第一个字符串,返回值为"p",超出范围会报错 >>>py_st ...
- Python 列表/元组/字典总结
序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内置类型,但最常见的是列表和元组. 序列 ...
- Python列表,元组,字典,字符串方法笔记
01. 列表 1.1 列表的定义 List(列表) 是 Python 中使用 最频繁 的数据类型,在其他语言中通常叫做 数组 专门用于存储 一串 信息 列表用 [] 定义,数据 之间使用 , 分隔 列 ...
- python 列表 元组 字典 集合
列表 lst = [i for i in range(10)] 切片 # 把下标小于2的显示出来 print(lst[:2]) # 把10个数有大到小输出 print(lst[::-1]) # 把下标 ...
- Python 列表&元组&字典&集合
列表(list) 有序性,可存储任意类型的值 通过偏移存取,支持索引来读取元素,第一个索引为0 ,倒数第一个索引为-1 可变性 ,支持切片.合并.删除等操作 可通过索引来向指定位置插入元素 可通过po ...
- Python列表,元组,字典,集合详细操作
菜鸟学Python第五天 数据类型常用操作及内置方法 列表(list) ======================================基本使用====================== ...
- Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
Python第三天 序列 数据类型 数值 字符串 列表 元组 字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...
随机推荐
- 1、C#中Hashtable、Dictionary详解以及写入和读取对比
在本文中将从基础角度讲解HashTable.Dictionary的构造和通过程序进行插入读取对比. 一:HashTable 1.HashTable是一种散列表,他内部维护很多对Key-Value键值对 ...
- javascript常用的数组操作
数组的定义 var arr=new Array(); var arr=[]; var arr=new Array(10);//定义一个长度为10的数组 数组元素的访问 var temp=arr[1]; ...
- 使用document.domain和iframe实现站内AJAX跨域
站内AJAX跨域可以通过document.domain和iframe实现,比如www.css88.com.js.css88.com.css88.com这3个域名其实是3个不同的域,很多时候www.cs ...
- ps-基础知识
一.常用名词及几个常见控制面板. 二.工具栏中各工具的名称及使用方法. 三.新建文件的流程和注意事项. 四.光与色的基础知识
- hdoj-1285-确定比赛名次(拓扑排序)
题目链接 /* Name:hdoj-1285-确定比赛名次 Copyright: Author: Date: 2018/4/11 15:59:18 Description: 标准的拓扑排序模板题,注意 ...
- New Concept English three (48)
23w/m 76errors In this much-travelled world, there are still thousands of places which are inaccessi ...
- canvas基础学习(一)
一.概述 canvas它和其它的HTML5标签的使用基本一致,但是它相当于在浏览器中建立一个画布,可以再这个画布上画图.创建动画甚至是3D游戏.由于canvas要适配不同终端的分辨率,所以尽可能的在标 ...
- Codeforces Round #263 (Div. 2)C(贪心,联想到huffman算法)
数学家伯利亚在<怎样解题>里说过的解题步骤第二步就是迅速想到与该题有关的原型题.(积累的重要性!) 对于这道题,可以发现其实和huffman算法的思想很相似(可能出题人就是照着改编的).当 ...
- 51nod 1685 第K大区间2
定义一个长度为奇数的区间的值为其所包含的的元素的中位数.中位数_百度百科 现给出n个数,求将所有长度为奇数的区间的值排序后,第K大的值为多少. 样例解释: [l,r]表示区间的值[1]:3[2]:1[ ...
- 一道SQL的面试题之联想
一道SQL的面试题之联想 本人工作在一家小型的民营企业,主要从事业务系统的日常维护,二次开发,菜鸟一枚.周五经理准备面试两个开发人员,据简历,都还比较不错,让经理产生了想法,于是准备了一套面试题目,给 ...