遥想我男票追我时,还会陪我一起看书、学习、码代码,软件工程毕业的他总“语重心长”的说,学编程语言要先学习数据结构。最近也算有了切身体会,python数据结构倒是看过几遍,就是记不住,于是找时间梳理梳理。
对象类型 | 例子 常量/创建 |
---|---|
数字 | 1234,3.1415,Decimal,Fraction |
字符串 | ‘spam’,”guido’s” |
列表 | [1,[2,’three’],4] |
字典 | {‘food’:’spam’,’taste’:’yum’} |
元组 | (1,’spam’,4,’U’) |
文件 | myfile = open(‘eggs’,’r’) |
集合 | set(‘abc’){‘a’,’b’,’c’} |
其他类型 | 类型、None、布尔型 |
编程单元 | 函数、模块、类 |
与实现相关的类型 | 编译的代码堆栈跟踪 |
数字
常用的数据类型:整数、浮点数
一般数学运算:加法(+),减法(-),乘法(*),乘方(**)
数字输出的时候有全精度和用户友好形式,如果有的东西看起来比较奇怪,可以用print输出
字符串
作用
记录文本信息
结构
单个字符的字符串的序列,python里面的序列还包括列表和元组
操作
切片
字符串 S =’Spam’
切片顺序:由左至右为:0,1,2……,从右至左为:-1,-2,-3……
操作描述 | 案例 | 输出 |
---|---|---|
取特定位置字符 | s[1],s[-3] | p |
提取特定范围字符串 | s1:3 | pa |
从第2位取到最后 | s[1:] | pam |
取前3个字符 | s[:3] | spa |
查找:find
有点儿像Excel的find函数
1 |
s.find('pa') |
输出结果:1
替换:replace
类似SQL里面的正则表达式:regexp_replace
str.replace(old,new)
1 |
s.replace('pa','ABC') |
输出结果:sABCm
分割:split
案例
1 |
line = 'aaa,bbb,cccc,dd' |
输出结果:[‘aaa’, ‘bbb’, ‘cccc’, ‘dd’]
分割结果是一个列表
1 |
a =line.split(",") |
输出结果:bbb
格式化替代
1 |
|
输出结果:’spam, eggs,and SPAM!’
模式匹配
类似sql正则表达式的应用,暂时把案例整理出来,之后运用的时候再拓展
1 |
import re |
输出结果:(‘ Python ‘,)
列表
定义
任意类型的对象的位置相关的有序集合,没有固定的大小。
列表的操作包括:序列操作、append、sort、reverse、嵌套和解析
字典
定义
是一种映射,是python核心对象集合中的唯一的一种映射类型,特具有可变性
元组
定义
可认为元组是不可以改变的列表
应用得不太频繁,但是它的关键在于不可变性;对于编写更大型的程序时比较方便
文件
1 |
open('.txt','w') |
集合
1 |
x = set('spam') |
输出结果:{‘a’, ‘m’, ‘p’, ‘s’}
操作有:
操作 | 符号 | |
---|---|---|
交集 | & | |
并集 | ||
差集 | - |
近期评论