bisect模块 处理已经排序的序列,升序,从小到大,分插入数据和查看插入数据的位置两大核心,类似于插入排序算法 插入数据 # 首先这个序列按升序规则已经排序好的 # 查找规则是二分查找,当数据相等的时候又分为插入左边或右边 import bisect score = [] # 二分查找插入排序好的序列,升序,从小到大 # 维护已经排好序的列表,默认右边,本身必须是可修改序列类型 bisect.insort(score, 30) # 插入相同数据的右边 bisect.insort_right(s…
转载请注明出处http://www.cnblogs.com/Wxtrkbc/p/5492298.html 在面试中,经常会遇到一些考排序算法的题,在这里,我就简单了列举了几种最常见的排序算法供大家学习,说不定以后哪天面试正好用上,文章后半段则介绍一下collections模块,因为这个模块相对于python提供的基本数据结构(list,tuple,dict)不被人们所熟悉,但是如果你对他们了解的话,用起来也是非常方便高效的. 排序算法 一.冒泡排序(BubbleSort) 步骤: 比较相邻的元素…
Python list 排序 & np list 排序 nums = [1.25, 0.98, 6.13, 7.62] li = np.array(nums) print(li) out = np.sort(li) print(out) out = np.argsort(-li) print(out) np.sort(li) :排序 np.argsort(-li) :list从大到小排序,输出原始list的index   [1.25 0.98 6.13 7.62] [0.98 1.25 6.13…
1. 序列化 什么叫序列化——将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化. 1.1 为什么要有序列化 为什么要把其他数据类型转换成字符串?因为能够在网络上传输的只能是bytes,而能够存储在文件里的只有bytes和str. 比如,我们在python代码中计算的一个数据需要给另外一段程序使用,那我们怎么给?现在我们能想到的方法就是存在文件里,然后另一个python程序再从文件里读出来.但是我们都知道,对于文件来说是没有字典这个概念的,所以我们只能将数据转换成字典放到文件中.你一定会…
Python第十五天  datetime模块 time模块   thread模块  threading模块  Queue队列模块  multiprocessing模块  paramiko模块  fabric模块 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Python第二天  变量  运算符与表达式  input()与raw_input()区别  字符编码  python转义符  字符串格式化 Python第三天 序列  5种数据类型  数值  字符串…
Python第十一天    异常处理  glob模块和shlex模块    打开外部程序和subprocess模块  subprocess类  Pipe管道  operator模块   sorted函数    os模块   hashlib模块  platform模块  csv模块 目录 Pycharm使用技巧(转载) Python第一天  安装  shell  文件 Python第二天  变量  运算符与表达式  input()与raw_input()区别  字符编码  python转义符  字…
Operator--标准功能性操作符接口. 代码中使用迭代器时,有时必须要为一个简单表达式创建函数.有些情况这些函数可以用一个lambda函数实现,但是对于某些操作,根本没必要去写一个新的函数.因此operator模块定义了一些函数,这些函数对应于算术.比较和其他与标准对象API对应的操作. 1.逻辑操作符(Logical Operations) 下面函数用于确定一个值的布尔等价值,或者否定它创建相反的布尔值,或比较对象确定它们是否相同. from operator import * a = -…
itertools 用于更高效地创建迭代器的函数工具. itertools 提供的功能受Clojure,Haskell,APL和SML等函数式编程语言的类似功能的启发.它们的目的是快速有效地使用内存,并且将它们关联在一起以表示更复杂的基于迭代的算法. 基于迭代器的代码比使用列表的代码提供了更好的内存消耗特性.因为直到数据需要使用时才从迭代器中生成,所有数据不需要同时存储在内存中.这种 "惰性" 的处理模式可以减少大型数据集的交换和其他副作用,从而提高性能. 除了 itertools 中…
Python与CSV文件(CSV模块)   1.CSV文件 CSV(逗号分隔值)格式是电子表格和数据库最常用的导入和导出格式.没有“CSV标准”,因此格式由许多读写的应用程序在操作上定义.缺乏标准意味着不同应用程序生成和使用的数据中通常存在细微差别.这些差异会使处理来自多个源的CSV文件变得很烦人.尽管如此,虽然分隔符和引用字符各不相同,但总体格式足够相似,以至于可以编写单个模块,该模块可以有效地操纵这些数据,隐藏从程序员读取和写入数据的细节. 2.csv---读[csv.reader(csvf…
基础知识 1. 定义 模块:用来从逻辑上组织python代码(变量,函数,类,逻辑----实现一个功能),本质就是.py结尾的python文件(文件名:test.py,对应的模块就是test) 包:用来从逻辑上组织模块的,本质就是一个目录(必须带有一个__init__.py文件) 2. 导入方法 module_cc文件里有很多函数&变量: import module1_name import module1_name,module2_name from module_cc import *  …