Python数据结构

所属系列:【Python工程师系列】

所属主题:【Python零基础】

1

编码格式建议

不用Tab缩进,用4倍空格缩进

必要时换行(避免单行超出79个字符)

用空格区分函数或者类或者函数内部的一大段代码

代码前面加上必要的注释

用文档字符串

操作符liagn两边或者逗号后面必须空格

函数采用lower_case_width_underscore方式命令,类用驼峰(CanekCase)方式命名;总是用self当作类的第一个方法的参数

不要用特殊的编码格式(ASCII是兼容所有的)

2

数据结构

数组

python数据默认有一些常用方法:比如append, extend, insert等等

作为堆栈使用

作为队列使用

一些常用的方法

filter(function, sequence) : 返回function的值为true的所有值

map(function, sequence): 返回处理后的值

传递两个数组: 分别从一个数组里取出一个数 返回相加后的结果

reduce(function, sequence) :把数组的第一个和第二个参数想加的和和第三个数再加。。如果数组为空,会返回异常

reduce可以指定开始的第一个数的索引:

创建数组的几种形式:

更复杂点的例子:x,y作为一个整体 必须加上括号

更多例子:

二维数组

复杂点的例子:

相当于:

删除数组内元素:del

删除整个数组:

新类型:元组。输入可以加括号,也可以不加。输出都是带括号的。

空元组和只有一个元素的元组:

逆序元素:

新的类型:集合

创建空集合:set()

集合a, b 之间的交集 并集

新的类型:字典

字典是根据key索引的,而key数据类型可以为数字或者字符串,元组的元素都是不可变的,也可以作为key。数组不能作为key,因为数组可被修改

dict方法直接创建字典:

遍历

通过enumerate方法

一次性遍历多个(这个特性不错。。

逆序遍历:reversed

对数组排序(sorted方法),然后遍历:

遍历字典的时候,获得key和value:

遍历的时候改变一个数组:

更多条件语句

比较运算符:

in和not in判断是否在序列里面; is和is not用来比较两个对象是否是同一个对象;

比较可以链式: a < b == c 判断a小于b,并且b等于c

布尔操作符:and和or 优先级比比较运算符低 not优先级最高 or最低

布尔运算符,当一个满足条件不会继续下面的计算

比较结果可以被赋值:

3

模块

退出解释器后,所有声明的函数或者变量都不存在了。所以我们需要创建一个python脚本,可持续地运行。每一个脚本文件称之为一个模块。

比如我们创建一个文件:fibo.py

在解释器里面导入这个模块:

访问模块的函数:

函数赋给一个变量

本文来自企鹅号 - github媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏佳爷的后花媛

PHP基础

在线运行 PHP 中的每个代码行都必须以分号结束。分号是一种分隔符,用于把指令集区分开来。

1164
来自专栏calmound

Javascript字符串

## 定义 ``` var str = new String("abcdefg"); var str = "abcdefg"; ``` ## 常用方法 ###...

2836
来自专栏desperate633

LeetCode 368. Largest Divisible Subset分析代码

这里需要发现一个规律,就是如果result中已经有【1,2】,那么对于要新加进来的数,只要它能整除掉result中最大的数就可以,因为如果先把result按大小...

581
来自专栏desperate633

LintCode 用递归打印数字题目分析代码

recursion(i) { if i > largest number: return results.add(i) recursion(i + 1)...

531
来自专栏前端布道

JavaScript之正则表达式

正则表达式 (regular expression) 描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某...

2686
来自专栏老司机的技术博客

golang学习笔记4:基本类型和运算符

布尔型的值只可以是常量 true 或者 false。一个简单的例子: var b bool = true 。两个类型相同的值可以使用相等 == 或者不等 != ...

1343
来自专栏技术博文

js去掉html标签和去掉字符串文本的所有的空格

去掉html标签的js <script>  function delHtmlTag(str){   return str.replace(/<[^>]+>/g,...

3595
来自专栏King_3的技术专栏

leetcode-867-Transpose Matrix(矩阵由按行存储变成按列存储)

Given a matrix A, return the transpose of A.

1152
来自专栏柠檬先生

jquery 筛选元素(1)

.eq()   减少匹配元素的集合为指定的索引的那一个元素。   .eq(index)     index一个整数,指示元素的位置,以0为基数。  ...

1747
来自专栏Bingo的深度学习杂货店

Q66 Plus One

Given a non-negative integer represented as a non-empty array of digits, plus on...

3196

扫码关注云+社区