![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Python
Galahad_Lin
这个作者很懒,什么都没留下…
展开
-
Python数据结构与算法 DAY 03 快速排序&插入排序&二分法查找&二叉函数节点以及数的创建&二叉树深度遍历
Python数据结构与算法 DAY 03 重点知识总结 快速排序&插入排序&二分法查找&二叉函数节点以及数的创建&二叉树深度遍历一 快速排序快速排序需要注意的一点是它的思想 每一次排序会将比中间数大的数放在中间数的左边 并且将比中间数大的数放在中间数的右边 每一次取的中间数都是列表的第一个数 并采用递归的思想完成代码表示如下:这里需要注意一个部分 外部大循环和内部的小循环 如果内部不加小循环 那么将会报错 根据逻辑来说需要仔细考虑内层循环的条件def quick_原创 2020-08-31 18:29:29 · 168 阅读 · 0 评论 -
Python数据结构与算法 DAY 02 数据结构之链表&栈&队列
Python数据结构与算法 DAY 02 重点知识总结 链表的实现一 单链表单链表图例class Single(object): def __init__(self,item): self.item =item self.next = Noneclass Method(object): # 创建初始值 将代表链首个节点的__head 定义并设置为None 即默认该链没有长度 也没有节点 def __init__(self):原创 2020-08-26 23:48:26 · 169 阅读 · 0 评论 -
Python数据结构与算法 DAY 01 引入概念&顺序表&链表
Python数据结构与算法 DAY 01 引入概念&顺序表&链表一 数据结构与算法引入概念(首次尝试)学到至今我们对python的程序已经有了一定的认识 从现在开始我们需要继续跟深入了解 那么我们不只能局限于将一个程序写出来能运行即可 我们还需要研究使用什么样的方法才能让程序更加简洁 同等条件下计算的时间更小 程序的可读性更强首先我们先看一个例题:如果 a + b + c = 1000 , 且 a^2 + b^2 = c^2(a,b,c都为自然数),如何求出所有a,b,c可能的组原创 2020-08-26 00:39:09 · 248 阅读 · 0 评论 -
Python进程与线程 DAY 01
Python进程与线程 DAY 01 进程&线程一 进程一 多任务的引入我们很多场景事情是同时进行的 最简单的一个比方 看电影的时候我们需要声音和视频同时进行 如果我们需要实现的话我们就得引入多任务的概念系统默认的执行方式是: 代码从上至下执行 执行完一个语句再执行下一个 比如import timedef run1(): for i in range(5): print(f'run1 - {i}') time.sleep(1)def run2()原创 2020-08-25 00:50:22 · 213 阅读 · 0 评论 -
Anacoda&Jupyter DAY 05 Pandas绘图&Scipy
Anacoda&Jupyter DAY 05 重点知识总结 Pandas绘图&Scipy一 pandas绘图Series 和 DataFrame 都有一个用于生成各类图标的plot方法 默认情况下 他们都是线型图import numpy as npimport pandas as pdfrom pandas import Series,DataFrameimport matplotlib.pylot as plt一 线形图二维折线图s = Series(data = n原创 2020-08-21 23:38:47 · 807 阅读 · 0 评论 -
Anacoda&Jupyter DAY 04 pandas合并补充&pandas数据处理
Anacoda&Jupyter DAY 04 重点知识总结 pandas合并补充&pandas数据处理一 pandas合并之 pd.merge()merge()和concat()的区别在于 merge需要依据某一共同的行或者列来进行合并使用pd.merge()合并时 会自动根据两者相同的columns名称的那一列 作为key来进行合并 注意每一列的元素顺序不要求一致一般来说 最普通的合并方式分为一对一合并 多对一合并 多对多合并一对一合并 只有一列是有关联的 并且列索引的名原创 2020-08-20 20:46:24 · 659 阅读 · 0 评论 -
Anacoda&Jupyter DAY 03 处理丢失数据&pandas层次化索引&pandas拼接操作
Anacoda&Jupyter DAY 03 重点知识总结 处理丢失数据&pandas层次化索引&pandas拼接操作一 处理丢失数据一共有两种丢失数据:Nonenp.nan(NaN)NoneNone是python自带的 其类型为python object 因此 None不能参与到任何计算当中object类型的运算会比int类型的运算会慢很多np.nan(NaN)np.nan是浮点类型 能参与到计算中 但是参与到计算中的结果总是为nan我们可以使用 np.nan原创 2020-08-19 20:59:05 · 350 阅读 · 0 评论 -
Anacoda&Jupyter DAY 02 numpy补充&pandas
Anacoda&Jupyter DAY 02 重点知识总结 numpy补充&pandas一 numpy知识补充一 补充numpy的聚合操作补充一个nan的部分: NaN == not a number (非法字符)例子:np.nansum() 和 np.sum() 的区别如果在array中出现 nan等字符 使用np.sum() 方法求出的是nan(意思就是无法通过该方法处理含有nan的数组) 如果使用np.nansum的方法可以跳过nan的项 并且求合法字符的部分的和故:原创 2020-08-18 21:04:43 · 199 阅读 · 0 评论 -
Anacoda&Jupyter DAY 01 数据清洗入门 numpy
Anacoda&Jupyter DAY 01 数据清洗工具入门 numpy一 Jupyter 入门操作前言:该部分建立在下载并安装 Anacoda Navigator 的基础上使用的操作 其中使用的Jupyter的部分操作也是建立在此 安装后并配置好环境变量即可操作 这里就不详细解释安装和配置了一 启动程序启动程序打开cmd输入 activate root使用cmd命令提示符(cd等) 进入到需要编辑的项目文件夹输入 jupyter notebook二 Ipython的帮助文档原创 2020-08-18 00:11:15 · 956 阅读 · 1 评论 -
MySQL DAY 05 索引&事务
MySQL DAY 05 重点知识总结 索引&事务一 索引索引介绍索引就相当于书的目录 我们查取某个数据的时候 如果不使用索引 将会从第一条数据进行匹配 匹配到数据的最后一个 每一个数据都会进行判断 表越大 花费的时间越多 那么会一定程度上降低查找的速度 索引有利于快速找出某个列的特定值的行当然 索引也不宜过多 索引越多的写入 修改的速度就会月满 因为写入修改数据时 也要修改索引在MySQL中 所有数据类型的列都可以被索引 常用的储存引擎有InnoDB 和 MyISAM ,这两种都支持每原创 2020-08-14 19:33:51 · 116 阅读 · 0 评论 -
MySQL DAY 04 使用python语句操作MySQL
MySQL DAY 04 重点知识总结 使用python语句操作MySQL一 pip pymysql 的第三方包使用pip install pymysql 下载并装载python对应的mysql第三方包二 使用python语句操作MySQLMySQL根据我们的学习 主要对数据的处理有如下部分 可分为大类增删改查四个部分 我们在使用python对数据库进行操作的时候大多数使用的是sql语言 进行操作 而python所做的 就是登入并创建游标 可以理解为 给sql语句在python环境内创造一个可以调用原创 2020-08-13 23:52:52 · 178 阅读 · 0 评论 -
Python DAY 15 复习课 & 打印星星方法汇总
Python DAY 15 复习课 打印星星方法汇总一 复习大纲变量变量定义x=y=z=1x,y = 1,2x,y,z=(1,2,3)变量的命名规范abc,输入输出input()print()数据类型:int, float, bool, str, None, list, dict, set, tuple, bytesbool:假的情况: 0,False,"",None,[],{},(),b’’str:基本操作:索引([1]),切片([:]),成员(in,not原创 2020-08-08 09:25:52 · 433 阅读 · 0 评论 -
Python DAY 14 异常处理&文件操作&复制文件&CSV文件读写
Python DAY 14 重点知识总结 异常处理&文件操作&复制文件&CSV文件读写一 异常处理错误: Error 异常: Exception错误实例:1a = 10 # SyntaxError: invalid syntax 无效的语法 即语法错误print(a) # NameError: name 'a' is not defined 变量没有定义[][0] # IndexError: list index out of range 列表越界1 +原创 2020-08-06 19:34:51 · 562 阅读 · 0 评论 -
Python DAY 13 属性私有化 继承 重写 多态 常用特殊属性方法 单例设计模式 __str__ 和 __repr__
Python DAY13 重点知识归纳 属性私有化 继承 重写一 属性私有化限制属性 _ slots_slots的用法在昨天的文章中有写道 主要是限制在同一个类内的可用属性 规定的属性名字放在slots后的元组内 元组内未出现的属性名称在后面不能使用以及调用 如果使用则会报错# 限制属性class Pig: __slots__ = ('name') # 限制属性只能由name def __init__(self, name, age): self.name原创 2020-08-05 19:53:10 · 187 阅读 · 0 评论 -
Python DAY 12 系统模块 面向对象
Python DAY 12 重点知识总结 系统模块 面向对象一 系统模块一 time模块import timeprint(time.time()) #时间戳 1596432288.6838048 距离1970年1月1日的秒数# 时间戳 <==> 时间元组print(time.gmtime()) # 当前的时间元组#time.struct_time(tm_year=2020, tm_mon=8, tm_mday=3, tm_hour=5, tm_min=27, tm_sec=2,原创 2020-08-04 19:59:23 · 164 阅读 · 0 评论 -
Python DAY 11 模块 包 import
Python DAY 11 重点知识总结 模块 包 import一 os模块os : operation system 操作系统curdir : current directory 当前目录 (当前文件夹). 表示当前目录… 表示上一级目录os.getcwd() 获取当前目录 相对路径绝对路径: 从磁盘开始的完整路径相对路径:从当前目录开始的路径print(os.getcwd()) # 可以获得本文件的绝对路径listdir() 重点掌握获取指定目录下所有的文件夹和文件名称原创 2020-07-31 20:24:18 · 154 阅读 · 0 评论 -
Python DAY 10 函数进阶
Python DAY 10 函数进阶 知识点总结一 装饰器 [掌握]概述如果一个函数需要增加功能 却不改变函数内部 我们可以使用装饰器在代码运行期间 可以增加函数的功能的方式 我们成为装饰器也就是说 在不修改原函数的基础上 给函数增加新功能好处:在团队开发中 如果两个或者两个以上的程序员会用到相同的功能 但是功能又有细微的差别 采用装饰器:互不影响 代码简化使用简单的装饰器def text():print('123')def outer(func): def inn原创 2020-07-30 15:23:52 · 227 阅读 · 0 评论 -
Python DAY 09 函数的特殊用法
Python Day 09 函数的特殊用法 知识点总结一 变量可以指向函数打个比方 abs() 是系统内置的函数之一 绝对值print(abs(-10)) #10print(abs) # abs(-10) 是函数的调用 而abs是函数本身函数本身也可以直接赋值给一个变量 也就是说 变量可以指向一个函数 如 f=abs 那么f也会赋予绝对值的意义f = abs 表示f已经指向了abs所在的函数 所以调用abs和调用f是一个道理 都是可以实现绝对值的效果函数名是一个变量函数名也是可以原创 2020-07-29 20:30:40 · 213 阅读 · 0 评论 -
Python DAY 08 函数基础
Python Day 08 函数基础重点知识总结定义函数函数语法def 函数名(参数1,参数2,参数3……):函数体返回值 #有些不设置返回值说明:函数有两部分组成:声明部分和执行部分def 关键字 是define的缩写函数名 类似于变量名 尽量做到看名知意() 表示参数的开始和结束参数1,参数2,参数3……:参数列表 该为形式参数 简称形参 ,本质上为一个变量名 参数列表可以为空函数体 封装的代码和功能返回值 一般用于结束函数 可有可无 如果有返回值 则会将会将return原创 2020-07-29 16:30:03 · 124 阅读 · 0 评论 -
歌词解析器 - python
该程序实现根据时间间隔显示相印的歌词musicLrcStr = """[00:03.50]传奇[00:19.10]作词:刘兵 作曲:李健[00:20.60]演唱:王菲[00:26.60][04:40.75][02:39.90][00:36.25]只是因为在人群中多看了你一眼[04:49.00][02:47.44][00:43.69]再也没能忘掉你容颜[02:54.83][00:51.24]梦想着偶然能有一天再相见[03:02.32][00:58.75]从此我开始孤单思念[03:08.15原创 2020-07-28 20:31:44 · 256 阅读 · 0 评论 -
Python DAY 07 字符串
Python Day 07 重点知识总结一.字符串一 概述字符串重复 获取某个字符 字符串的切片 字符串的遍历 身份判断 与列表操作相似还是要记住 for index,i in enumerate(s) 还是比较有用的关于格式化输出在之前的总结中有详细的解释 这里不过多赘述本人使用最多的 为format方法 python3.5以上也由f‘’ 的方法 使用方法相似 详情参看之前的总结关于常用的转义字符通过\ 来改变后面字母或者特殊字符的含义\t 相当于tab键\n 相当于enter键原创 2020-07-28 14:23:48 · 153 阅读 · 0 评论 -
Python DAY 06 字典 元组 集合 两种排序算法
Python Day06 重点知识归纳复习一.列表增append(n)insert(i,n)extend([])删pop(i) 索引remove(n)count()clear()del改age[0] = 99查print(age[0])index:copy(): 浅拷贝 只拷贝一维copy.deepcopy(): 深拷贝 全部维度都可拷贝sort():默认为升序sort(resverse = Ture)sorted():升序 不改变原列表so原创 2020-07-27 20:22:05 · 152 阅读 · 0 评论 -
Python DAY 05 列表
Python DAY 05 重点知识总结一. 列表列表的索引和切片单个元素的索引 正向(从左往右)0开始 依次加一反向(从右往左)-1开始 依次减一列表的切片 lst[开始元素的索引:结束元素索引+1:步长]修改列表的某个元素修改即为 lst[该元素的索引]=需要修改的部分多个修改:lst[开始索引:结束索引]=[ , , , ]#(修改的部分一一对应 数量应该保证相同)列表内的列表的获取列表内套列表 取值即为 lst[内列表的索引][内层列表的索引]如: lst[5][2]二原创 2020-07-23 17:50:29 · 102 阅读 · 0 评论 -
Python DAY 04 if-else/while/占位符
Python DAY 04 重点知识总结一.if–else一.分支if (判断条件):执行语句if(判断条件):执行语句else:执行语句if(判断条件):执行语句elif (判断条件):执行语句else:执行语句4.if (判断条件):执行语句if (判断条件):执行语句二.嵌套if语句if (判断条件):执行语句if (判断条件):执行语句else:执行语句二.while循环和 for 循环while (满足则进入循环):执行原创 2020-07-23 14:42:30 · 393 阅读 · 0 评论 -
Python DAY 03 变量 类型 运算
Python DAY3 重点知识点总结变量1.赋值python中 赋值即为等号右边的数字 或者 字符串 等 赋值与左边的变量 如:a=10b=20c=‘what’这样 a,b,c 即可被称为变量 对应的值即为右边赋值部分2.关于变量名称规则1.必须是字母或者下划线开头2.只能由数字 字母 下划线 组成, 不能由特殊字符组成 如:¥&等3.严格区分大小写4.尽量不要使用关键字 即python官方赋予特殊意义的字符 如print , sum 等ps:拓展名常使用下划线组成命名原创 2020-07-22 20:15:35 · 127 阅读 · 0 评论 -
Python DAY 02 Python基础(DOS命令 进制转化 输入输出)
Python DAY 02 知识点总结1.DOS 命令最基础的windows DOS命令1.cd … #返回上一级2.cd / #返回根目录3.cd (文件名) #进入某文件夹4.dir #查看该文件夹内文件名5.cd D: #到D盘关于进制1.十进制 与 二进制十进制转化为二进制 主要用短除法 短除2后从下往上写 即为该十进制数字的二进制数字二进制转化为十进制主要使用是阶乘的方法 主要为对应二进制1所在位置右边有多少个数字 即为多少次2的阶乘次方 最后将所有的数字相加结果 即为所代表原创 2020-07-22 20:01:34 · 207 阅读 · 0 评论