Python学习笔记系列——数据结构相关
Python有4种数据结构:列表(list)、字典(dictionary)、元组(Tuple)、集合(set)。从最直接的感官上来说,这四种数据结构的区别是:列表中的元素使用方括号括起来,字典和集合是花括号,元组是圆括号,其中字典中的元素都是带有“:”的key-value对应关系组。
1、列表(List)
#1、列表中的每一个元素都是可以变的
#2、列表中的元素都是有序的,也就是说每一个元素都有一个位置
#3、列表可以容纳Python中的任何对象 fruit = ['Apple','Orange','pear']
fruit.insert(1,'grape') #在第二个数据前面插入
print(fruit)
fruit.remove('pear') #删除
print(fruit)
fruit[0] = 'Grapefruit' #替换
print(fruit)
2、字典(Dictionary)
#1、字典中数据必须是以键值对的形式出现
#2、逻辑上,键是不能重复的,而值可以重复
#3、字典中的键Key是不可变的,也就是无法修改的。而值Value是可变的,可修改的,可以是任何对象 a = {'key':'','key':''} #重复的键值对,只会输出一个
print(a) Nasdaq_code = {'BIDU':'baidu','SINA':'sina'}
Nasdaq_code['YOKU'] = 'youku' #添加元素
print(Nasdaq_code)
Nasdaq_code.update({'FB':'facebook','TSLA':'Tesla'}) #批量添加
print(Nasdaq_code)
del Nasdaq_code['FB'] #删除元素
print(Nasdaq_code)
3、元组(Tuple)
#1、元组不可修改
#2、元组可被查看索引,方式同列表
letters = ('a','b','c','d','e','f')
print(letters[0])
4、集合(Set)
#1、集合中的元素是无序、不重复的任何对象
#2、集合不能被切片也不能被索引。可做集合运算,集合元素可以被添加还有删除 a_set = {1,2,3,4}
a_set.add(5) #添加
print(a_set)
a_set.discard(5) #删除
print(a_set)
5、推导式(列表解析式)
现在我有10个元素要装进列表中,普通的写法是这样的:

下面换成列表解析的方式来写,是这样的:

如下图,列表推导式可以简单的看成两部分。红色虚线后面的是我们熟悉的for循环表达式,虚线前面的可以认为是我们想要放在列表中的元素。

列表解析式的执行效率比较:(列表解析式的执行效率较高,性能较优)
#推导式 list = [item for item in iterable],先iterable,在进行item的输出
import time
a=[]
t0 = time.clock()
for i in range(1,2000):#使用循环时的执行时间
a.append(i)
print(time.clock() - t0,'seconds process time') t0 = time.clock()
b=[i for i in range(1,200)]#使用列表解析式的执行时间
print(time.clock() - t0,'seconds process time')
#列表解析式示例
a = [i**2 for i in range(1,10)]
print(a)
c = [j+1 for j in range(1,10)]
print(c)
k = [n for n in range(1,10) if n %2 ==0]
print(k)
z = [letter.lower() for letter in 'ABCDEFGHIGKLMN']
print(z)
d = {i:i+1 for i in range(4)}
print(d)
g = {i:j for i,j in zip(range(1,6),'abcde')}
print(g)
l = {i:j.upper() for i,j in zip(range(1,6),'abcde')}
print(l)
Python学习笔记系列——数据结构相关的更多相关文章
- python学习笔记系列----(三)数据结构
这一章主要是介绍了python一些常用的数据结构,比如list,tuple,dictionary,set,以及一些实用遍历技巧,主要讲的还是list. 3.1 list 主要介绍了list的一些常用的 ...
- python学习笔记系列----(一)python简介
一个月前,就按下决心要系统的学习下python了,虽然之前有学习过java,学习过c++,也能较为熟练的使用java做自动化测试看懂c++里的业务逻辑,但是实际上有那么多的东西自己还是不清楚,今天下定 ...
- Python学习笔记系列
1.小甲鱼 python 学习系列笔记
- python学习笔记系列----(八)python常用的标准库
终于学到了python手册的最后一部分:常用标准库.这部分内容主要就是介绍了一些基础的常用的基础库,可以大概了解下,在以后真正使用的时候也能想起来再拿出来用. 8.1 操作系统接口模块:OS OS模块 ...
- python学习笔记五——数据结构
4 . python的数据结构 数据结构是用来存储数据的逻辑结构,合理使用数据结构才能编写出优秀的代码.python提供的几种内置数据结构——元组.列表.字典和序列.内置数据结构是Python语言的精 ...
- Python学习笔记系列——函数
今年下半年的计划主要是Python和Mysql了,公司不方便看书和视频,就照着廖雪峰的Python网站开始看了.以下纯为个人笔记记录,若是想系统学习的小伙伴还是看这里的好一些,毕竟系统.https:/ ...
- python学习笔记系列----(七)类
7.1 python类和相关术语的简介 Python 通过最小的新语法和语义在语言中实现了类. 它是 C++ 或者 Modula-3 语言中类机制的混合.类的大多数重要特性都被完整的保留下来:类继承机 ...
- python学习笔记系列----(五)输入和输出
这一章主要是讲述程序展示其数据的一些方法,一般都是直接按照一定的格式输出在屏幕,或者写入到文件以便以后使用.按照一定格式的输出,在python中实际就是对str的操作,主要就是介绍了formart() ...
- python学习笔记系列----(二)控制流
实际开始看这一章节的时候,觉得都不想看了,因为每种语言都会有控制流,感觉好像我不看就会了似的.快速预览的时候,发现了原来还包含了对函数定义的一些描述,重点讲了3种函数形参的定义方法,章节的最后讲述了P ...
随机推荐
- Flutter 中 ListView 的使用
这个小例子使用的是豆瓣 API 中 正在上映的电影的开放接口,要实现的主要效果如下: JSON 数据结构 Item 结构 Item 的结构是一个 Card 包含着一个 Row 然后这个 Row 里面左 ...
- js map()处理数组和对象数据
之前的文章梳理了JS数组与对象属性的遍历方法,本文介绍专门用以遍历并处理数据的map()方法. 一.原生map() map()是数组的一个方法,它创建一个新数组,其结果是该数组中的每个元素都调用一个提 ...
- Pig脚本 .pig
pig脚本就是一个文件,保存了多条pig命令,通常后缀是.pig(不强制). 多行注释:/**/ 单行注释:-- 下面是一个名字是test.pig的脚本的例子: /* ...
- mysql的日期函数介绍
仅供参考 DAYOFWEEK(date) 返回日期date是星期几(1=星期天,2=星期一,……7=星期六,ODBC标准)mysql> select DAYOFWEEK('1998-02-03 ...
- 使用ServiceBroker自动激活模拟"秒杀"场景
1.简介 SQL Server Service Broker 是SQL server 里面比较独特的一个功能.它可帮助开发人员构建异步的松散耦合应用程序 ServiceBroker入门文章:http: ...
- 解决国外模板h1、h2、h3...不显示中文文章标题的问题
如果你经常用国外好看的网页模版时候,会遇到不显示中文文章标题的情况,显示英文标题却正常.遇到这个情况很多人认为应该修改CSS的font-family的字体,其实这是错误的,与CSS无关. 出现这种情况 ...
- 关于easyUI
<input class="easyui-combobox" id="s_dataDicName" data-options="panelHei ...
- Oracle特殊恢复原理与实战(DSI系列)
1.深入浅出Oracle(DSI系列Ⅰ) 2.Oracle特殊恢复原理与实战(DSI系列Ⅱ) 3.Oracle SQL Tuning(DSI系列Ⅲ)即将开设 4.Oracle DB Performan ...
- Linux uname命令详解
uname常见命令参数 -a, --all print all information, in the following order, except omit -p and -i if unknow ...
- 铁乐学python_md5校验两个文件的一致性
# 写一个函数,参数是两个文件的路径 # 返回的结果是T/F # 判断两个文件的md5值是否相同 import hashlib def diff_md5(file1,file2): def chick ...