
Python学习笔记
文章平均质量分 52
英语渣i
我是一名python初学者,对学习python有很大的兴趣。
展开
-
蓝桥杯真题(Day3)
目录七段码猜生日数的分解七段码"""1. 72. ab af bg bc cg cd de dg df fg 103. abg, afg, fab,fgb,gcd,ged,edc,egc,afe,abc,fed,bcd,fgc,fge,bgc,bge 164. abgf,gcde,abcd,afed,afgc,afge,abgc,abge,fabe,fabc,fgbe,fgbc,gecf,gecb,gedf,gedb,gcdf,gcdb,edcf.原创 2022-03-19 21:16:11 · 523 阅读 · 0 评论 -
Python数据结构(基数排序)
多关键字排序,假如现在有一个员工表要求按照薪资排序,年龄相同的员工按照年龄排序 先按照年龄进行排序,再按照薪资进行稳定的排序 基数排序就是先按照个位再按照十位等等排序 def radix_sort(li): max_num = max(li) # 确定最大值来确定循环次数(最大值99->2次,888->3次,10000->5次) it = 0 while 10 ** it <= max_num: ...原创 2022-01-20 17:20:47 · 367 阅读 · 0 评论 -
Python数据结构(桶排序)
首先将元素分在不同的捅中,再对每个同种的元素排序 def bucket_sort(li,n=100,max_num=10000): buckets = [[] for _ in range(n)] for var in li: # 创建捅 i = min(var // (max_num // n),n-1) # i 表示var放到几号桶里 buckets[i].append(var) # 把var加到桶里 # 保持桶内的顺...原创 2022-01-20 17:19:40 · 463 阅读 · 0 评论 -
Python数据结构(计数排序)
def count_sort(li,max_count): count = [0 for _ in range(max_count+1)] for val in li: count[val] += 1 li.clear() for ind,val in enumerate(count): for i in range(val): li.append(ind)# 测试import randomli = [rando.原创 2022-01-20 17:18:45 · 290 阅读 · 0 评论 -
Python数据结构(希尔排序)
def insert_sort_gap(li,gap): for i in range(gap,len(li)): tmp = li[i] j = i - gap while j >= 0 and li[j] > tmp: li[j+gap] = li[j] j -=gap li[j+gap] = tmpdef shell_sort(li): d = len(li.原创 2022-01-20 17:18:09 · 369 阅读 · 0 评论 -
Python数据结构(归并排序)
分解合并 def merge(li,low,mid,high): i = low # 右边箭头 j = mid + 1 # mid+1 箭头 ltmp = [] while i <= mid and j <= high: # 只要左右两边都有数 if li[i] < li[j]: ltmp.append(li[i]) i += 1 else: ...原创 2022-01-20 17:17:22 · 472 阅读 · 0 评论 -
Python数据结构(堆排序)
建立堆。 得到堆顶元素,为最大元素。 去掉堆顶元素,将堆最后一个元素放到堆顶,此时可通过一次调整重新使堆有序。 堆顶元素为第二大元素。 重复步骤3,直到堆变空。 代码实现def sift(li,low,high): # 下调函数的实现 """ 下调函数的实现 :param li:列表 :param low: 堆的根节点的位置 :param high:堆的最后一个元素位置 :return: ...原创 2022-01-20 17:16:06 · 529 阅读 · 0 评论 -
Python数据结构(查找)
最近好多天都没有更新,主要是在学习Python数据结构,哎,一言难尽,大一C语言数据结构没有好好学,导致现在几乎从头开始,学习算法的话,希望大家一定好好掌握python语言基础,没有基础的话,可能学习很困难,然后后面的话有很多算法,希望大家不仅仅是理解,更多是完全掌握,这样才能在以后的面试考试中对自己学的代码架构理解程度更高。 补充一点,我在学习数据结构时,又在前面的Python笔记中加了很多笔记,但是因为记录的比较乱,后面我会整理一下发出去,但是具体的时间待定,毕竟补充的...原创 2022-01-07 10:28:45 · 1594 阅读 · 0 评论 -
Python数据结构(时间和空间复杂度)
目录数据结构与算法(Python版)1.1 算法概念1.2 时间复杂度1.3 空间复杂度1.4 递归1.5 汉诺塔问题数据结构与算法(Python版) # 1. 入门1.1 算法概念概念: 算法就是一个计算过程,解决问题的方法程序 = 数据结构 + 算法1.2 时间复杂度 时间复杂度是用来估计算法运行时间的一个式子(单位) 一般来说,时间复杂度高的算法比复杂度低的算法慢 常见的时间复杂度(按照效率排序) O(1).原创 2022-01-07 10:20:44 · 902 阅读 · 0 评论 -
Python模块的制作发布安装
4.4 模块的制作定义:Python文件都可以作为一个模块,模块的名字就是文件的名字。你如创建一个test.py文件,那么test.py就是一个模块作用:模块可以使我们有逻辑的去组织Python代码,以库的行式去封装功能,方便调用者去调用; 模块可以定义函数、类、变量,也能包含可执行代码 不同的模块可以定义相同的变量名,但是每个模块中的变量名作用域只是在本模块中 模块的分类: 内置模块 自定义模块 第三方模块 # -*- coding:utf-8.原创 2022-01-01 16:00:13 · 373 阅读 · 0 评论 -
Python学习笔记(新手入门)(9)文件操作和时间操作
目录4.1 时间与日期4.1.1 time模块4.1.2 Sleep函数4.1.2 datetime 模块4.1.2.1 now( )方法4.1.2.2 strftime( fmt )方法4.2 文件操作4.2.1 打开文件4.2.2 写文件4.2.2.1 write() 方法4.2.2.2 writelines() 方法4.2.3 读文件4.2.3.1 read() 方法4.2.3.2 readlines() 方法4.2.3.3 with 关原创 2021-12-28 23:01:55 · 539 阅读 · 0 评论 -
Python学习笔记(新手入门)(8)面向对象下
3.9 面向对象下3.9.1 私有化属性 语法 两个下划线开头,声明该属性为私有,不能在类的外部被使用或直接访问 class Person(object): __age = 18 #定义一个私有化属性,属性名字前面加两个下划线使用私有属性的场景1.把特定的属性隐藏起来,不想让类的外部进行直接调用。2.保护不让属性的值随意改变。3.保护属性不被派生类(子类)去继承。class Person(object): def __init__(...原创 2021-12-26 10:41:32 · 539 阅读 · 0 评论 -
Python学习笔记(新手入门)(7)面向对象
目录3.8.4 析构方法3.8.5 继承3.8.5.1 单继承3.8.5.2 多继承3.8.5.3 继承的传递3.8.6 父类方法3.8.6.1 重写和调用父类方法3.8.7 多态3.8.7.1 类属性和实例属性3.8.7.2 类方法和静态方法3.8.4 析构方法 当整个程序脚本执行完毕后自动调用__del__方法 当对象被手动销毁时也会自动调用__del__ 析构函数一般用于资源回收,利用__del__方法销毁对象回收内存等资源原创 2021-12-21 12:52:18 · 719 阅读 · 0 评论 -
Python学习笔记(新手入门)(6)面向对象
目录3.7 内置函数3.8 面向对象3.8.1 面向对象介绍3.8.2 类和对象3.8.2.1 类的组成部分3.8.2.2 定义类和对象3.8.2.3 实例方法和属性3.8.2.4 init方法3.8.2.5 理解self3.8.2.6 self传参问题3.8.3 魔术方法3.7 内置函数内置函数就是Python安装后就自带的函数,我们可以直接去调用的函数。本章节具体内容在下面官网中。 官方文档地址内置函数 — Python 3.8.12 文档原创 2021-12-11 20:24:48 · 952 阅读 · 2 评论 -
Python学习笔记(新手入门)(5)递归函数
目录3.6 函数基础(下)3.6.1 全局变量和局部变量3.6.2 函数参数引用传值3.6.3 匿名函数3.6.4 递归函数3.6 函数基础(下)3.6.1 全局变量和局部变量3.6.1.1 局部变量 局部变量:在函数内部定义的变量 作用域:定义函数的内部 不同的函数可以定义同一个变量 作用:为了临时的保存数据 def test(): #定义一个函数 name = "Rany" #定义局部变量 print(...原创 2021-12-10 11:05:06 · 189 阅读 · 0 评论 -
Python学习笔记(新手入门)(4)自定义函数
目录三、Python函数基础3.1 函数基础3.2 函数参数3.3 函数返回值3.4 函数嵌套调用3.5 函数分类三、Python函数基础3.1 函数基础3.1.1 函数概念概念:在编写程序中,有某一功能代码出现多次,但是为了提高编写效率以为代码的重用,所以把具有独立功能的代码组织为一个小模块,这就是函数。3.1.1.1 什么是函数 一系列Python语句的组合,可以在程序中运行一次或者多次,一般是完成具体独立的功能。 3.1.1.2 为什么使用函数原创 2021-12-05 22:45:00 · 890 阅读 · 0 评论 -
Python学习笔记(新手入门)(3)
3、Python进阶(高级数据类型) 序列就是一组按照顺序排列的值(数据集合) 在Python中有三种内置的序列类型: 字符串 列表 元组 优点:可以支持索引和切片的操作 3.1 字符串及常用方法3.1.1 切片可以根据下标来获取序列对象的任意部分的数据 切片是指截取字符串中的其中一段内容内容。 特征:第一个索引为0,指向的是左端,第一个索引为负数的时候,指向的是右端。 切片使用语法:[起始下标:原创 2021-12-01 21:09:16 · 1127 阅读 · 0 评论 -
Python学习笔记(新手入门)(2)
1.6 算数运算符和比较运算符1.6.1 算术运算符#定义两个变量a = 7b = 3算数运算符 作用描述 示例 + 加法 算数加法 a + b = 10 - 减法 算数减法 a - b = 4 * 乘法 算数乘法 a * b = 21 ** 指数 左边的数是底数,右边的是指数 a ** b = 343 /除法 x/y 结果包含小数点后面的数 a / b = 2.33 //地板除 x...原创 2021-11-29 21:29:59 · 835 阅读 · 6 评论 -
Python学习笔记(新手入门)(1)
Python一、导言1.python是一个开源软件1.1.解释器①编译器:将其他语言编译成机器语言的工具②编译器翻译方式有两种,一个是编译,另一个是解释,两种方式直接按的区别在于翻译时间地点不同。当编译器以解释方式运行的时候,也称为解释器。1.2.python的设计目标 一门简单直观的设计语言与其他竞争者一样强大 开源、一边任何人都可以为它做贡献 代码想纯英语那样简单 适用于短期开发的日常任务 1.3Python的设计哲学 优雅原创 2021-11-28 22:16:12 · 2783 阅读 · 11 评论