python
suhuanyyy
对待自己温柔一点。你只不过是宇宙的孩子,与植物、星辰没什么两样。
展开
-
python四行代码输出九九乘法表
话不多说,直接上代码。 # 外层循环控制行 for i in range(1, 10): # 里层循环控制列 for j in range(1, i + 1): # 格式化输出 print('%d*%d=%d' % (j, i, i * j), end="\t") print()补充:1....原创 2019-03-29 17:21:32 · 494 阅读 · 0 评论 -
python二叉树广度优先遍历(层次遍历)
即从树的root开始,从上到下从从左到右遍历整个树的节点代码实现:def breadth_travel(self): """利⽤队列实现树的层次遍历""" if root == None: return queue = [] queue.append(root) while queue: node = queue.pop(...原创 2019-04-01 20:03:04 · 1601 阅读 · 0 评论 -
python二叉树的深度优先遍历
对于⼀颗⼆叉树,深度优先搜索是沿着树的深度遍历树的节点,尽可能深的搜索树的分⽀。深度遍历有重要的三种⽅法,这三种⽅式常被⽤于访问树的节点,它们之间的不同在于访问每个节点的次序不同。这三种遍历分别叫做先序遍历,中序遍历和后序遍历。我们来给出详细定义,然后举例看它们的应⽤。1.先序遍历在先序遍历中,我们先访问根节点,然后递归使⽤先序遍历访问左⼦树,再递归使⽤先序遍历访问右⼦树顺序:根节点...原创 2019-04-01 19:59:46 · 561 阅读 · 0 评论 -
python二分查找的两种实现方法(非递归实现,递归实现)
⼆分查找⼜称折半查找,优点是⽐较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插⼊删除困难。因此,折半查找⽅法适⽤于不经常变动⽽查找频繁的有序列表。1.⾸先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字⽐较,如果两者相等,则查找成功;2.否则利⽤中间位置记录将表分成前、后两个⼦表,如果中间位置记录的关键字⼤于查找关键字,则进⼀步查找前⼀⼦表,否则进⼀步查找...原创 2019-04-01 19:42:23 · 827 阅读 · 0 评论 -
python归并排序
归并排序是采⽤分治法的⼀个⾮常典型的应⽤。归并排序的思想就是先递归分解数组,再合并数组将数组分解最⼩之后,然后合并两个有序数组,基本思路是⽐较两个数组的最前⾯的数,谁⼩就先取谁,取了后相应的指针就往后移⼀位。然后再⽐较,直⾄⼀个数组为空,最后把另⼀个数组的剩余部分复制过来即可def merge_sort(list1): if len(list1) <= 1: r...原创 2019-04-01 19:34:18 · 471 阅读 · 3 评论 -
python快速排序
快速排序,⼜称划分交换排序1.通过⼀趟排序将要排序的数据分割成独⽴的两部分,其中⼀部分的所有数据都⽐另外⼀部分的所有数据都要⼩2.然后再按此⽅法对这两部分数据分别进⾏快速排序,整个排序过程可以递归进⾏,以此达到整个数据变成有序序列。步骤为:从数列中挑出⼀个元素,称为"基准"(pivot)重新排序数列,所有元素⽐基准值⼩的摆放在基准前⾯,所有元素⽐基准值⼤的摆在基准的后⾯(相同的数可以...原创 2019-04-01 19:17:49 · 2390 阅读 · 0 评论 -
python希尔排序
希尔排序是插⼊排序的⼀种。也称缩⼩增量排序,是直接插⼊排序算法的⼀种更⾼效的改进版本。希尔排序是⾮稳定排序算法。希尔排序是把记录按下标的⼀定增量分组,对每组使⽤直接插⼊排序算法排序;随着增量逐渐减少,每组包含的关键词越来越多,当增量减⾄1时,整个⽂件恰被分成⼀组,算法便终⽌。希尔排序过程:希尔排序的基本思想是:将数组列在⼀个表中并对列分别进⾏插⼊排序,重复这过程,不过每次⽤更⻓的列(...原创 2019-04-01 18:57:07 · 262 阅读 · 0 评论 -
python插入排序
插⼊排序是⼀种简单直观的排序算法。它的⼯作原理是:1.先通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插⼊。2.插⼊排序在实现上,在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插⼊空间。def insert_sort(list1): # 从第二个位置,即下标为1的元素开始向前插入 for j in range(1, le...原创 2019-04-01 18:48:18 · 137 阅读 · 0 评论 -
python选择排序
选择排序是⼀种简单直观的排序算法。它的⼯作原理如下:1.⾸先在未排序序列中找到最⼩(⼤)元素,存放到排序序列的起始位置2.然后,再从剩余未排序元素中继续寻找最⼩(⼤)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕def select_sort(list1): # 需要进行 总长度-1次选择操作 for j in range(len(list1)-1):...原创 2019-04-01 18:41:45 · 341 阅读 · 0 评论 -
python冒泡排序
冒泡排序是⼀种简单的排序算法。它重复地遍历要排序的数列,⼀次⽐较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的⼯作是重复地进⾏直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越⼩的元素会经由交换慢慢“浮”到数列的顶端冒泡排序算法的运作如下:1.⽐较相邻的元素。如果第⼀个⽐第⼆个⼤(升序),就交换他们两个。2.对每⼀对相邻元素作同样的⼯作,从开始第⼀对...原创 2019-03-31 20:04:36 · 900 阅读 · 2 评论 -
python通过key值,或者value值 对字典进行排序
# 初始化字典a = {"b": 5, "c": 2, "a": 4, "d": 1}# 对字典按键(key)进行排序(默认由小到大)test_1 = sorted(a.items(), key=lambda x: x[0])# 输出结果print(test_1) # [('a', 4), ('b', 5), ('c', 2), ('d', 1)]# 对字典按值(value)进行...原创 2019-03-31 19:58:09 · 490 阅读 · 0 评论 -
python校验用户登录信息
要求:用户输入用户名,密码后对信息进行校验1.用户名长度在3-8个字符2.用户名中只能出现英文字母和数字3.密码长度必须是6位4.密码必须由纯数字组成分析:1.信息使用input操作获取2.定义自定义异常,描述非法信息3.提供检测的函数,针对情况进行处理4.执行程序中要使用try结构完成检测# 创建自定义用户名错误,密码错误异常类class NameQuestion(Exc...原创 2019-03-31 19:50:44 · 3121 阅读 · 0 评论 -
python抛出异常,处理异常,自定义异常实例
需求:提示用户输入性别,如果非男非女,抛出异常并处理# 自定义异常class GenderException(Exception): pass注释:自定义异常需要继承父类Exception# 定义sex函数def sex(): a = input("请输入性别:") if a != "男" or a != "女": # if a not in ("男...原创 2019-03-31 19:38:58 · 3129 阅读 · 0 评论 -
python复制粘贴文件,即创建副本文件
需求1:将命名为 1.txt 的文件名改为 1 - 副本.txtfile1_name = "d:/1.txt"# 查找文件中的点出现的位置idx = file1_name.rfind(".")# print(file1_name[0:idx])# print(file1_name[idx:])# 利用切片添加副本文字file2_name = file1_name[0:idx...原创 2019-03-31 19:26:36 · 4009 阅读 · 0 评论 -
python 文件写入操作
方法一:with open("test.txt","w") as file: file.write("hello")注释:1.open()函数第一个参数为文件名如果文件不存在将创建文件,若文件存在则覆盖原文件内容2.open()第二个参数为文件的读写模式,详情请查看python基础教程方法二:file2 = open("test2.txt","w")file2.write...原创 2019-03-31 19:16:44 · 7348 阅读 · 0 评论 -
python获取当前时间
python有很多模块可供我们直接使用想要获取当前时间只需要导入time模块就可以了1.导入模块import time2.调用函数 打印当前时间print(time.asctime())3.得到当前时间Fri Mar 29 17:28:44 2019...原创 2019-03-29 17:30:05 · 182 阅读 · 0 评论 -
python爬取网站图片
代码以爬取电脑壁纸为例1.导入模块:import requestsimport urllib.requestimport uuidfrom bs4 import BeautifulSoupimport os2.确定图片保存位置:if os.path.exists('D:\image') == True: print("image dir is exsit")els...原创 2019-04-12 19:43:00 · 611 阅读 · 1 评论