自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

等风来的博客

Python人工智能学习历程

  • 博客(52)
  • 收藏
  • 关注

原创 Python学习之---集合,元组,列表,字符串,字典 ---组合数据类型使用方法

0. 组合数据类型的基本概念定义: 能够表示多个数据的类型称为组合数据类型。组合数据类型分类: 集合类型;序列类型;映射类型。集合类型: 是一个元素集合,元素之间无序,相同元素在集合中唯一存在。序列类型: 是一个元素向量,元素之间存在先后关系,通过序号访问,元素之间不排他,可重复。序列类型的典型代表是字符串类型和列表类型。映射类型是:“键-值”数据项的组合,每个元素是一个键值对,表...

2019-04-10 15:59:44 1363

原创 python 学习之路 ---多进程精讲

多进程由于Python的GIL全局解释器锁存在,多线程未必是CPU密集型程序的好的选择。多进程可以完全独立的进程环境中运行程序,可以较充分地利用多处理器。但是进程本身的隔离带来的数据不共享也是一个问题。而且线程比进程轻量级。multiprocessingProcess类Process 类遵循了hread 类的API, 减少了学习难度先看一个例子,前面介绍了单线程,多线程比较的例子的多...

2019-06-29 09:47:28 341

原创 python学习之路--多线程精讲

并发与多线程基本概念并发与并行的区别并行: parallel 互不干扰的同一时刻做几件事情并发: concurrency 同一时刻有很多事情要做并发的解决1> 对列,缓冲区 # 排队 如Queue Lifoqueue PriorityQueue (小顶堆 实现)2> 争抢 # 互相抢,哪个抢到就执行哪个3> 预处理 ...

2019-06-29 09:46:50 360

原创 Python学习之 --- 数据库编程之 ORM+sqlalchemy 库使用

ORMORM,对象关系映射,对象和关系之间的映射,使用面向对象的方式来操作数据库。关系模型和Python对象之间的映射table => class ,表映射为类row => object ,行映射为实例column => property ,字段映射为属性SQLAlchemySQLAlchemy是一个ORM框架安装pip install sqlalchemy...

2019-06-29 09:43:45 472

原创 Python学习之 --- 数据库编程之pymysql 编程

数据库编程驱动Mysql 基于TCP 协议之上开发,但是网络连接后,传输的数据必须遵循Mysql 协议的包,就是驱动程序Mysql驱动Mysqldb最有名的库,对Mysql的client封装实现,支持python2 不在更新,不支持python3Mysql官方的Connectorpymysql 语法兼容Mysqldb ,使用python写的库,支持oythonpy...

2019-06-29 09:42:41 407

原创 Python学习之 ---Mysql数据库的基本操作+Mysql 数据库入门

数据库基础知识截止2019年6月数据库受欢迎排行(https://db-engines.com/en/ranking)下面我们开始学习其中的一种关系型数据库https://www.baidu.com/?tn=39042058_41_oem_dg----Mysql.由于版权问题,因此使用MariaDB一:数据库安装[root]# yum install mariadb-server # ...

2019-06-23 20:57:13 359

原创 Python 学习之 ---asyncio 库的使用

asyncio 库的使用3.4版本加入标准库asyncio 底层基于selector 实现,看似库,其实就是个框架,包含同步IO, 事件循环,协程,任务等内容举例:def a(): for i in range(3): print('a.x',i)def b(): for i in range(3): print('b.x' ,i)a()...

2019-06-19 16:50:28 2496

原创 python学习之 ---logging 模块详解

logging 模块日志级别日志级别数值CRIICAL# 严重警告,危险50ERROR40WARNING30# 默认级别INFO20DEBUG10NOTSET0日志级别指的是产生日志的事件的严重程度设置一个级别后,严重程度低于设置值的日志消息将被忽略debug()、 info()、 warning()、 error() 和 ...

2019-06-13 14:52:57 973

原创 python学习之 ---面向对象高级进阶+魔术方法+描述器

面向对象高级附上面向对象所以知识的思维图:特殊属性含义_name_类,函数,方法等的名字_class_对象的类型 type (type(ClassName)) 相当于 ClassName._type___dict__★★★★对象属性的字典_qualname_类的限定名_bases_类的基类的元组,顺序为他们在基类列表中出现的顺序...

2019-06-05 19:33:06 275

原创 python学习之---异常处理

异常处理异常 Exception错误 Error逻辑错误,算法写错,笔误: 变量名写错,函数或类使用错误错误可以避免**异常Exception **例如:open 函数,文件不存在,或者创建文件时,文件已经存在,或者访问一个网络文件,突然断网,是个意外情况异常是不可避免的错误和异常在高级语言中,一般都有错误和异常,异常可以捕获,并被处理,但是错误是不能被捕获的产生异常rai...

2019-05-21 21:08:06 944

原创 python面向对象学习三 --多继承+装饰器写多继承+Mixin多继承

多继承OCP原则: 多用继承,少修改补充OCP – Open -closed Principle (开闭原则) 应该在不修改现有代码的基础上,引入新的功能继承的用途: 在子类上实现对基类的增强,实现多态多态在面向对象中,父类,子类通过继承联系在一起,如果可以通过一套方法,就可以实现不同表现,就是多态一个类继承自多个类就是多继承,它将具有多个类的特征多继承的弊端多继承很好的模拟了世界,...

2019-05-21 21:07:24 382

原创 python面象对象学习二 ---类的继承(单类)

类的继承基本概念在面向对象中,从父类继承,就可以直接拥有父类的属性和方法,这样可以减少代码,多复用,子类可以定义自己的属性和方法如何继承?举例:class A : # python3中一切类都从object开始继承例如 A(object) passClass B(A) : # 定义B类时,用("被继承的类") 就可以表示B 从A 类继承 passa = A() ...

2019-05-21 21:06:24 189

原创 python面向对象学习一 ---面向对象基础

面向对象语言的分类面向机器 : 抽象成机器指令,机器容易理解的语言,代表汇编语言面向过程 :可以步骤化,按部就班的处理,代表C语言面向对象 : 代表 python java什么是面向对象呢?一种认识世界,分析世界的方法论,将万事万物抽象为各种对象,类class类是抽象的概念,是万事万物的抽象,是一类事物的共同特用计算机语言来描述类,是属性和方法的集合对象 instance ...

2019-05-21 21:05:24 339

原创 python练习---面向对象作业练习一+随机整数生成+模拟购物车+温度转换+车辆管理系统

面向对象练习题1、随机整数生成类可以先设定一批生成数字的个数,可设定指定生成的数值的范围。运行时还可以调整每批生成数字的个数import randomclass RandomMy: # 生成多个实例,每次调用返回一个结果 def __init__(self,start=1,end=100,count =10): self.start =start ...

2019-05-18 11:24:19 1108

原创 python练习 ---求2个字符串的最长公共子串的三种求解方法

求2个字符串的最长公共子串最长公共子串(LCS,Longest Common Substring)思考:s1 = ‘abcdefg’s2 = ‘defabcd’方法一: 直接查找思路:最长公共子串一定出现在短的那个字符串里,如果用短的字符串中,先从最长字符开始,逐次减一,到长的那一个字符串中进行匹配.如果存在则说明已经找到,程序结束.优化:其实只要找到第一轮的公共子串的索引,最长...

2019-05-14 18:16:37 9760 1

原创 Python学习之 ---日志分析+数据分发与分析+多线程+queue模块+日志分析综合

日志分析概述生成中会生成大量的系统日志,应用程序日志,安全日志等等日志,通过对日志的分析可以了解服务器的负载,键康状况,可以分析客户的分布情况,客户的行为,甚至基于这些分析的时候可以做出预测.一般采集流程,日志产出->采集(Logdtash,Flume,Scribe) -> 存储->分析->存储(数据库,NoSQL)->可视化开源实时日志分析ELK平台Lo...

2019-05-13 21:29:54 763

原创 python学习之 ---正则表达式规则与正则表达式在python的应用

正则表达式概述正则表达式30分钟快速入门正则表达式是文本处理极为重要的技术,用它可以对字符串按照某种规则进行检索,替换分类BRE基本正则表达式,grep、sed、vi等软件支持。vim有扩展。ERE扩展正则表达式,egrep(grep -E)、sed -r等。PCRE几乎所有高级语言都是PCRE的方言或者变种。Python从1.6开始使用SRE正则表达式引擎,可以认为是PC...

2019-05-11 17:39:21 313

原创 Python学习之--argparse 模块 +ls功能模块实现举例

Python–argparse 模块一、简介argparse模块可以让人轻松编写用户友好的命令行接口。程序定义它需要的参数,然后 argparse 将弄清如何从 sys.argv 解析出那些参数。 argparse模块还会自动生成帮助和使用手册,并在用户给程序传入无效参数时报出错误信息。二、使用步骤1:import argparse # 首先导入模块2:parser = argpa...

2019-05-11 16:42:34 463

原创 python练习之 ---单词统计+热词统计+前10个单词统计的几种求法

单词统计在分析数据过程中,单词统计应用很广,尤其是提取海量文本中出现最多次数的词,往往可以进行舆论,热点等分析,应用非常广泛.下面将针对一个文本进行单词热词统计,其中列出多种求解过程,一起交流学习,欢迎下下方留言讨论.文本素材链接:https://pan.baidu.com/s/1cpbZVl3x_sCHeMWDbicOhA提取码:g9qr源码分析方法一 —最基本方法from ...

2019-05-09 22:27:01 2576

原创 python学习之 --CSV二维数据 + ini 配置文件处理

csv文件CSV 是一个被行分隔符、列分隔符划分成行和列的文本文件。CSV 不指定字符编码。行分隔符为\r\n,最后一行可以没有换行符列分隔符常为逗号或者制表符。每一行称为一条记录record字段可以使用双引号括起来,也可以不使用。如果字段中出现了双引号、逗号、换行符必须使用双引号括起来。如果字段的值是双引号,使用两个双引号表示一个转义。表头可选,和字段列对齐就行了。手动生成cs...

2019-05-06 09:21:43 408

原创 python学习之 --- shutil模块复制+copy+copytree+rm删除

shutil模块在一个目录下有两个文件,其中一个文件中写入数据,现在要将这些数据复制到另一个文件中,该如何操作?方法一: 打开文件读取,然后写入到另一个文件中import shutilfrom pathlib import Pathp1 = Path('C:/Users/Administrator/tmp/')with open('C:/Users/Administrator/tmp...

2019-05-06 09:02:54 3072

原创 python学习之 ---序列化与反序列化+pickle库+Json序列化+MessagePack序列化

序列化与反序列化为什么要序列化内存中的字典、列表、集合以及各种对象,如何保存到一个文件中?如果是自己定义的类的实例,如何保存到一个文件中?如何从文件中读取数据,并让它们在内存中再次恢复成自己对应的类的实例?要设计一套协议,按照某种规则,把内存中数据保存到文件中。文件是一个字节序列,所以必须把数据转换成字节序列,输出到文件。这就是序列化。反之,从文件的字节序列恢复到内存并且还是原来的类型...

2019-05-06 09:00:31 221

原创 Python学习之 ---文件路径操作+os.path +pathlib

路径操作路径操作模块from os import pathp = path.join('/etc','sysconfig','notework') # 创建路径 p,type(p)>>> '/etc\\sysconfig\\notework', str ###########path.split(p) # 拆分路径>>> '/et...

2019-05-06 08:56:10 831

原创 Python学习之---open操作+buffering缓冲区+上下文管理+StringIO和BytesIO

文件操作文件操作对编程语言的重要性不用多说,如果数据不能持久保存,信息技术也就失去了意义。1.1 ,open 操作open( file, # 文件名 mode='r', #默认为只读模式 buffering=-1,# 缓冲区 encoding=None,# 默认编码 errors=None,# newline=None, ...

2019-05-05 20:49:55 6591 1

原创 Python装饰器练习 ---命令分发器的实现

装饰器的应用一、写一个命令分发器程序员可以方便的注册函数到某一个命令,用户输入命令时,路由到注册的函数如果此命令没有对应的注册函数,执行默认函数,用户输入用input(">>")分析:输入命令映射到一个函数,并执行这个函数。(一直输入可以用while ) ,查找函数是否存在,字典正好合适。如果输入了某一个cmd命令后,没有找到函数,就要调用缺省的函数执行,这正好是字典缺省参...

2019-04-27 21:44:10 481

原创 Python练习之 --- base64编码与解码详解

1、实现Base64编码在python 内部,提供了base4 的编码功能,导入即可使用import base64base64.b64encode(b'abc')>>>b'YWJj'但是,如果自己编写一个base64的编码又该如何实现呢?先复习下字节的知识bytes and bytearray知识点字节的移位操作:i = 0b01100001i,hex(i)...

2019-04-27 19:51:55 722

原创 Python装饰器练习 ---实现一个缓存cache+可过期被清除的功能

实现一个cache 缓存,实现可过期被清除的功能简化设计,函数的形参定义不包含可变位置参数、可变关键词参数和keyword-only参数可以不考虑缓存大小,也不用考虑缓存满了之后的换出问题编写的函数,满足:def add(x=4, y=5): time.sleep(3) return x + y以下6种,可以认为是同一种调用print(1, add(4,5))print(2, a...

2019-04-27 15:39:46 2647 2

原创 python学习之 --- random库的高级使用方法

random库概述主要功能random 库主要功能是生成随机数.基本随机数的产生随机数的产生方法:需要一个随机数种子,再根据梅森旋转算法,产生一个随机数序列,随机数种子确定,那么随机数序列的数和数之间的关系也是确定的.因为随机数的产生方法,python中的随机数都是伪随机数,只要随机数种子确定,随机数序列也是确定的。random库的常用函数random库与随机数运用函数...

2019-04-26 09:11:59 743

原创 Python学习之 ---functools+reduce方法+ partial偏函数+lru_cache缓存复用

之前在将装饰器时使用到了functool里的wpapsfunctool 里还有几个很重要的部分值得深入学习 .包括:reduce方法partial偏函数lrc _cache_接下来将对这些方法进行详细的叙说:reduce方法reduce方法,顾名思义就是减少reduce(function, sequence[, initial]) -> value ★★★...

2019-04-25 21:42:26 409

原创 Python学习之 ---python参数类型注解

python参数类型注解Python是动态语言,变量随时可以被赋值,且能赋值为不同的类型Python不是静态编译型语言,变量类型是在运行期决定的动态语言很灵活,但是这种特性也是弊端def add(x, y): return x + yprint(add(4, 5))print(add('hello', 'world'))add(4, 'hello') #in...

2019-04-23 20:23:42 2792

原创 斐波那契数列的五种求法与时间复杂度测算

斐波那契数列的四种求法与时间复杂度测算定义:什么是斐波那契数列?斐波那契数列了解了斐波那契数列的特性,又该如何求解呢?不同方法所消耗的时间又是多少呢?接下来就做详细解析!方法一: 普通循环法计算%%timeit # 用于测算时间,将下面的函数重复执行多次,求出其平均值a ,b= 0,1for i in range(20):# 求斐波那契数列的前20项,如果求100以内的斐波那契数列...

2019-04-23 16:50:54 2701

原创 Python学习之 ---函数的柯里化与装饰器的编写

柯里化元装饰器柯里化与装饰器在Python中应用广泛,通过使用柯里化可以给实现装饰器提供可能.那么什么叫做装饰器么?先做个简单的疏导:装饰器本来是一门技术,但是在python中发扬光大了。举例:如果有一个情况,要定义一个函数,功能是做排序,三下五除二写出来了,但是客户过几天又说,哎你能不能给这个函数加一个时间运行统计,我想知道这个函数内部占用时间较大的运算。如果再去改代码的话,相当于把代码...

2019-04-23 10:25:24 328

原创 Python学习之 ---生成器

生成器★★★★生成器generator● 生成器指的是生成器对象,可以由生成器表达式得到,也可以使用yield关键字得到一个生成器函数,调用这个函数得到一个生成器对象● 生成器对象,是一个可迭代对象,是一个迭代器● 生成器对象,是延迟计算、惰性求值的生成器函数●函数体中包含yield语句的函数,就是生成器函数,调用后返回生成器对象.生成器函数def inc(): for i...

2019-04-23 10:23:59 157

原创 Python学习之 ---高阶函数+map()函数+filter()函数+zip()函数

高阶函数一等公民 First-Class Object● 函数在Python 是一等公民● 函数也是对象,是可调用对象● 函数可以作为普通变量,也可以作为函数参数,返回值高阶函数高阶函数(High-Order Function)● 数学概念,y= f(x)● 在数学和计算科学中,高阶函数应但是至少满足下面一个条件的函数  ◇ 接受一个或多个函数作为参数  ◇ 输出一个函数d...

2019-04-23 10:23:38 166

原创 Python学习之 ---数据结构"树"的基础知识

知识导图树树是一种非常重要的数据结构,它是非线性结构,它不是Python内置的数据结构;● 非线性结构● 树是n(n≥0)个元素的集合  ● n = 0时,称为空树  ● 树只有一个特殊的没有前驱的元素,称为树的根Root  ● 树中除了根结点外,其余元素只能有一个前驱,可以有零个或多个后继 # 若存在不止一个前驱则为图● 递归定义  ● 树T是n(n≥0)个元素的...

2019-04-18 13:05:25 321

原创 Python学习之 ---匿名函数lambda表达式

本文实例讲述了python中的lambda表达式用法。分享给大家供大家参考,具体如下:这里来为大家介绍一下lambda函数。匿名函数匿名:隐匿名字,既没有名称lambda 表达式Python中,使用lambda 表达式构建匿名函数lambda x:x*2 #定义(lambda x,y: x+y)(4,5)#加一个括号表示成函数,后面加(4,5)表示传参.在冒号之后不允许出现等号★★★...

2019-04-17 08:37:05 941

原创 Python学习之 ---生成器+生成器函数

生成器★★★★知识导图生成器generator● 生成器指的是生成器对象,可以由生成器表达式得到,也可以使用yield关键字得到一个生成器函数,调用这个函数得到一个生成器对象● 生成器对象,是一个可迭代对象,是一个迭代器● 生成器对象,是延迟计算、惰性求值的生成器函数●函数体中包含yield语句的函数,就是生成器函数,调用后返回生成器对象.生成器函数def inc(): ...

2019-04-16 22:11:42 3015 1

原创 Python学习之---列表解析+字典解析+集合解析+生成器表达式

列表解析List Comprehension语法:◆ [返回值 for 元素 in 可迭代对象 if 条件]◆ 使用中括号[],内部是for循环,if条件语句可选◆ 立即返回一个新的列表优点列表解析式是一种语法糖,引入一个新的概念:语法糖语法糖(Syntactic sugar),是由Peter J. Landin(和图灵一样的天才人物,是他最先发现了Lambda演算,由此而创立了...

2019-04-14 17:11:18 827

原创 Python学习之 ---函数的作用域和引用范围+全局变量+局部变量+默认值的作用域

函数的作用域作用域的定义: 就是变量可以使用的范围1.作用域分类● 全局作用域■ 在整个程序运行环境中都可见■ 全局作用域中的变量称为全局变量● 局部作用域■ 在函数,类等内部可见■ 局部作用域中的变量称为局部变量,其使用范围不能超过其所在的局部作用域.x =10#全局变量def fn(): #x 能打印么? 外部变量对内可见,内部定义外部不可见. print(x...

2019-04-13 17:20:50 705

原创 Python学习之---自定义函数(def())的使用与相关操作

Python学习之—自定义函数(def())的使用+相关操作首先牢记:关键字参数不可以在位置参数和普通参数的前面可变关键字参数,不可以在可变位置参数和普通参数前面.重要的事说三遍!!!牢记~~~这是后面判断定义的函数和函数调用是否正确的重要方法,往往会忘记.函数:数学定义y=f(x),y是x的函数,x是自变量.Python函数● 由若干语句组成的语句块,函数名称,参数列表,它是...

2019-04-13 09:56:16 99887 7

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除