python
Hajo_
任世事喧嚣,愿心无波澜。观众世成双,念一生无妨。
展开
-
30段极简Python代码小技巧
Python 是机器学习最广泛采用的编程语言,它最重要的优势在于编程的易用性。如果读者对基本的 Python 语法已经有一些了解,那么这篇文章可能会给你一些启发。作者简单概览了 30 段代码,它们都是平常非常实用的技巧,我们只要花几分钟就能从头到尾浏览一遍。重复元素判定以下方法可以检查给定列表是不是存在重复元素,它会使用 set() 函数来移除所有重复元素。def all_unique(lst): return len(lst) == len(set(lst))x = [1,1,2,原创 2020-10-24 21:12:45 · 146 阅读 · 0 评论 -
python字符串格式化的三种方式
python中对于字符串的格式化有三种方式,分别为使用%的方式, 使用fomat()格式换函数,还有在python3.6添加的f-string方式下面是对于这三种方式的使用介绍使用%格式化字符串使用方法:在%操作符的左侧为需要格式化的字符串,该字符串可以带有一个或多个嵌入的转换目标,每个都以%开头,在%操作符的右侧为填充到字符串中的内容,其中传入多个时使用元组进行传入。实例一:&...原创 2020-03-13 16:53:32 · 3090 阅读 · 0 评论 -
数据结构与算法学习笔记十一 --- 树
树 (Tree)树树的定义:由n(n>0)个元素组成的有限集合,其中:每个元素称为结点(node);有一个特定的结点,称为根结点或根(root);除根结点外,其余结点被分成m(m>=0)个互不相交的有限集合,而每个子集又都是一棵树(称为原树的子树)树的特性:每个节点有零个或多个子节点;没有父节点的节点称为根节点;每一个非根节点有且只有一个父节点;除了根节点外,...原创 2020-03-04 14:45:30 · 213 阅读 · 0 评论 -
数据结构与算法学习笔记十 --- 归并排序算法
归并排序算法(Merge Sort)归并排序算法是一种递归排序算法,其原理是:先将序列进行递归分解,分解到不能再分解为止;然后在进行相邻的两两排序合并,最后完成排序。一般归并排序算法的递归分解,是使用折半分解。以序列 – [54, 26, 93, 17, 77, 31, 44, 55, 20] 为例流程可以参考下图:其中merge_sort()表示分解,result表示返回排序好的合并序...原创 2020-03-02 21:47:37 · 195 阅读 · 0 评论 -
数据结构与算法学习笔记九 --- 快速排序算法
快速排序算法(Quick Sort)快速排序算法是一种递归排序算法;其原理是通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。简单点理解就是:以序列中的任意一个元素为基准(一般以第一个元素),通过逐个比较后,找到这个基准元素的合适位置(即在基...原创 2020-02-28 15:17:52 · 163 阅读 · 0 评论 -
数据结构与算法学习笔记八 --- 希尔排序算法
希尔排序算法(Shell Sort)希尔排序算法是插入排序算法的升级版,我们知道插入排序算法在两种情况下,插入排序的工作量是比较小的:在大多数元素已经有序的情况下在这种情况下,插入排序就不需要进行频繁的比较和交换,工作量就减少了在元素数量较少的情况下由于插入算法的时间复杂度与元素个数n 有关,n 变小了,时间也就相对变小了因此,希尔排序算法就是根据第一种情况得来的。希尔排序算法原...原创 2020-02-27 14:20:43 · 172 阅读 · 0 评论 -
数据结构与算法学习笔记七 --- 插入排序算法
插入排序算法(Insert Sort)插入排序算法的原理:把未排序的序列分成两部分,即有序部分和无序部分(一般把序列的第一个元素当作有序部分,剩余的当作无序部分),然后依次从无序部分取出一个元素与有序部分的每个元素比较,然后在有序部分的合适位置插入,直到整个序列有序。插入排序算法的原理与选择算法的原理比较插入排序算法的原理与选择排序算法的原理很相似,都是将待排序序列分成两部分(有序部分和无序...原创 2020-02-26 16:37:49 · 144 阅读 · 0 评论 -
数据结构与算法学习笔记六 --- 选择排序算法
选择排序算法(select sort)选择排序算法原理:首先在未排序的序列中找到最大或最小值,将它存放在起始位置,然后再从剩余未排序序列元素中继续寻找最大或最小值,将找的最大或最小值存放在已排序的序列尾部。以此类推,直到所有的元素均排序完毕。选择排序算法的python实现代码如下:def select_sort(alist): """选择排序""" # 外循环总轮数 ...原创 2020-02-26 15:16:22 · 120 阅读 · 0 评论 -
数据结构与算法学习笔记五 --- 冒泡排序算法
冒泡排序算法冒泡排序算法原理: 从未排序的序列的开头开始,比较相邻的两个元素,将值大(小)放在右边,每轮比较完成都会将最大(最小)放在最后一位,下一轮就只要从开头比较到倒数第二个。以此类推,直到序列排序完毕。对于一个有n个元素的序列,需要进行 n-1 轮循环比较.冒泡排序算法的python 实现代码如下:ef bubble_sort(alist): """冒泡排序""" ...原创 2020-02-26 15:11:06 · 133 阅读 · 0 评论 -
数据结构与算法学习笔记四---栈与队列
栈(stack)栈是一种容器,是一种逻辑数据结构;可存入数据元素,访问数据元素,删除数据元素;栈最主要的特点就是先进后出,即First In Last Out(FILO),栈只能在一端进行操作。(栈顶栈底)栈的两种基本操作为:push:入栈pop:出栈可用顺序表或链表来实现栈的python实现代码实现的基本操作:Stack()创建一个空栈push(item)添加一个元素到栈顶...原创 2020-02-26 13:05:14 · 220 阅读 · 0 评论 -
python queue模块
queue模块实现了四种队列, 即Queue,LifoQueue, PriorityQueue, SimpleQueue.queue模块对象class.queue.Queue(maxsize=0): FIFO队列, 先进先出class.queue.LifoQueue(maxsize=0):LIFO队列,先进后出,即栈class.queue.PriorityQueue(maxsize=0):...原创 2019-12-03 11:57:54 · 221 阅读 · 0 评论 -
python collections模块
本文对python模块collections中的常用对象(Couter, deque, namedtuple, OrderedDict, defaultDict)进行介绍原创 2019-11-25 19:55:29 · 184 阅读 · 0 评论 -
python时间模块 datetime (datetime、timedelta和timezone部分)
本文介绍python时间模块 datetime (datetime、timedelta和timezone部分)的常用方法和属性原创 2019-11-21 15:21:23 · 5511 阅读 · 0 评论 -
python时间模块 datetime(date和time部分)
本文对时间模块datetime中date和time部分的一些常用函数的介绍及使用。原创 2019-11-18 17:30:45 · 3519 阅读 · 0 评论 -
python 日志模块logging
日志记录的流程框架在 Python 中,怎样才能算作一个比较标准的日志记录过程呢?或许很多人会使用 print 语句输出一些运行信息,然后再在控制台观察,运行的时候再将输出重定向到文件输出流保存到文件中,这样其实是非常不规范的,在 Python 中有一个标准的 logging 模块,我们可以使用它来进行标注的日志记录,利用它我们可以更方便地进行日志记录,同时还可以做更方便的级别区分以及一些额外日...原创 2019-10-24 14:03:13 · 243 阅读 · 0 评论 -
python 基础100例摘选
python 基础100例部分一参照:https://blog.csdn.net/songlh1234/article/details/91391981部分有作者自己的修改供参考"""有四个数字1,2,3,4可以组成多少个互不相同的无重复的三位数"""def test001(): arr = [] for i in range(1, 5): for...原创 2019-10-08 18:02:44 · 244 阅读 · 0 评论