自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 数据库 -- MySQL

1.1 数据库简介数据库就是存放数据的仓库,常用的数据库模型主要分为两种:关系型数据库和非关系型数据库关系型数据库模型就是把复杂的数据结构归结为简单的二元关系(即二维表格形式)非关系型数据库也被称为NoSQL数据库,NoSQL的产生并不是要彻底地否定关系型数据库,而是作为传统关系型数据库的一个有效补充。NoSQL数据库在特定的场景下可以发挥难以想象的高效和高性能1.2 MySQ...

2019-04-13 15:42:56 169

原创 python高级 -- 正则表达式

1.1 正则表达式的特点是: 灵活性、逻辑性和功能性非常强; 可以迅速地用极简单的方式达到字符串的复杂控制; 对于刚接触的人来说,比较晦涩难懂。1.2 re模块常用方法re.match():result = re.match("hello", "hellozzy world")print(result, result.group...

2019-04-13 14:30:10 120

原创 python高级 -- 应用层编程

1.1 FTP编程FTP协议底层采用的是TCP协议完成的网络数据传输FTP类型常见属性方法login(user=’anonymous’, passwd=’’,acct=’’) 登录FTP服务器pwd() 查看当前路径cwd(path) 切换路径到指定的path路径dir(path [,…[,cb]]) 显示path路径中文件的内容nlst([path [,….]]) 类...

2019-04-13 14:10:20 303

原创 python高级 -- 多线程聊天服务器

import threadingfrom socket import *users = []def readprocess(cs, caddr): while True: receivebytes = cs.recv(1024) if len(receivebytes) > 0: receivedata = re...

2019-04-13 11:53:04 343

原创 python高级 -- 网络编程

网络编程就是如何在程序中实现两台计算机的通信1.1 UDP编程TCP是建立可靠连接,并且通信双方都可以以流的形式发送数据。相对TCP,UDP则是面向无连接的协议。使用UDP协议时,不需要建立连接,只需要知道对方的IP地址和端口号,就可以直接发数据包。但是,能不能到达就不知 道了。虽然用UDP传输数据不可靠,但它的优点是和TCP比,速度快,对于不要求可靠到达的数据,就可以使用UDP协...

2019-04-13 11:50:31 233

原创 python高级 -- 多线程

1.1 获取线程数import threadingimport timedef fun(): time.sleep(1) print("hello")t = threading.Thread(target=fun)t.start()# print(threading.enumerate())while True: leng = len(threading....

2019-04-13 11:32:22 120

原创 python高级 -- 进程

1.1 进程和程序编写完毕的代码,在没有运行时,称为代码正在运行的代码,称为进程进程除了包含代码之外还要有代码的运行环境1.2 fork()【windows不支持fork】os.fork()方法执行一次回返回两次,操作系统自动把当前进程(父进程)赋值一份(子进程),然后在父进程和子进程内分 别执行子进程返回0父进程返回子进程的idimport ospid = o...

2019-04-13 10:49:00 105

原创 python高级 -- 进程和线程

进程线程的对比进程和线程的根本区别:1、进程是操作系统资源分配的基本单位,而线程是任务调度和执行的基本单位2、每个进程都有独立的代码和数据空间,同一个进程中的线程共享资源3、在操作系统中能同时运行多个进程(程序),而在同一个进程中也可以同时执行多个线程4、内存分配方面:系统在运行时回味每个进程分配不同的内存空间,对线程而言,除了cpu外,系统不会为线程分配内存(线程所使用的资源...

2019-04-13 09:54:36 93

原创 python高级 -- 垃圾回收

python采用的是以引用计数机制为主,标记-清理和分代收集为辅的策略1.1 引用计数当对象的引用计数为0时,对象就会被删除(垃圾回收)引用计数+1的情况:1、对象被创建时,例如a="hello zzy"2、对象被引用时,例如 b=a,此时a引用计数+13、对象作为参数被传到一个函数中时4、对象作为一个子元素,存储到容器中时,例如 list=[a,b]引用计数-1的...

2019-04-13 09:38:15 103

原创 python高级 -- 元类

1.1 什么是元类元类就是用来创建类的‘东西’python中类也是一种对象#定义一个类# Python解释器在执行的时候会创建一个对象class AI(object): pass print(type(AI))# <class 'type'>1.2 使用type创建类type可以动态的创建类type(类名,由父类名组成的元组,属性字典)...

2019-04-13 09:19:12 90

原创 python高级 -- 拷贝

拷贝分为浅拷贝和深拷贝1.1 ‘=’ 一般意义的复制‘=’ 相当于引用,即原始队列改变,被赋值的队列也会改变list1 = [1,2,[3,4]]print(list1)list2 = list1print(list2)list1.append(5)print(list1,list2)list1[2].append(3.5)print(list1,list2)1....

2019-04-12 21:25:54 546

原创 python高级 -- 装饰器

1.1 装饰器装饰器的作用:在不改变原函数的情况下给函数增加功能装饰器由闭包和语法糖组成1.2 闭包闭包特点:外部函数嵌套内部函数内部函数可以访问并且保存外部函数的变量外部函数返回内部函数的引用有以上三个特点的函数就称为闭包闭包的例子:def func1(a): def func2(b): return a+b return...

2019-04-12 20:39:35 112

原创 python高级 -- 可迭代、迭代器

1.1 可迭代对象可以用for循环便利的对象称为可迭代对象:Iterable主要包括:集合数据类型,如list、tuple、dict、set、str等,以及迭代器1.2 判断是否可迭代可以使用 isinstance() 判断一个对象是否是 Iterable 对象:In [50]: from collections.abc import IterableIn [51]: isi...

2019-04-12 20:26:36 118

原创 python高级 -- 生成器

python中,一边循环一边计算的机制,称为生成器:generator1.1 生成器的创建方法1把列表生成式的[ ]改为()"""生成器"""L = [x*x for x in range(5)]# 列表类型为class 'listprint(L, type(L))G = (x*x for x in range(5))# 生成器类型为 class 'generato...

2019-04-12 20:19:21 95

原创 python高级 -- python是动态语言

1.1 动态语言的定义动态语言是在运行时可以改变其结构的语言。Python、JavaScript、PHP是动态语言,不需要编译,直接由解释器解释执行,执行效率低下。C、C++、Java、C#不是动态语言,需要经过编译成中间语言或者机器语言再执行。动态的添加类属性:class Person(): country = 'china' def __init__(s...

2019-04-12 19:58:18 351

原创 python高级 -- 属性与方法

1.1 类属性与实例属性对比:类属性不会因实例不同而不同,类属性之开辟一次内存,节省内存;实例属性因实例不同而不同,每构造一个实例,都会另开辟一个内存,实例属性通常需要通过类的构造方法(__init__)初始化;实例可以调用类属性,类不可以调用实例属性。"""类属性与实例属性"""class Person(): country = 'china' def ...

2019-04-12 19:39:07 131

原创 关于ubuntu

命令行查看ubuntu位数信息:root@dabing-virtual-machine:/# uname -aLinux dabing-virtual-machine 4.18.0-11-generic #12-Ubuntu SMP Tue Oct 23 19:22:37 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux查看ubuntu版本号信息:root@...

2019-02-19 20:10:53 106

原创 面向对象之宠物医院

'''宠物医院: OOA:分析 对象:宠物 宠物医院 OOD:设计 宠物: 属性:名字,健康值 行为:恢复 宠物医院: 属性:名字 行为:治疗 OOP:编程'''class Pet: '''定义类:宠物'''...

2019-02-13 18:00:54 453

原创 面向对象之老张开车去东北

'''老张开车去东北: OOA:分析 对象:老张——人——Person 车——交通工具——Vehicle 东北——地点——PLace OOD:设计 人: 属性:名字 行为:驾驶 交通工具: 属性:名字 ...

2019-02-13 17:58:55 5587

原创 Python中四种组合数据类型--集合

集合:可以存放多个无序的且不能重复的数据(数据可以修改)声明:s=set() # 声明空集合的方法只有这一个s={} # 这是字典的声明方法s=set([1,2,3,4]) # 声明一个非空集合s={1,2,3,4} # 声明一个非空集合【推荐】数据操作:增删改查增加数据:# 增加数据s={1,23,3,4,}s.add("wlop")s....

2019-01-27 14:33:23 715

原创 Python中四种组合数据类型--字典

字典:可以存放多组key-value键值对,键不能重复,值可以重复声明:空字典:d=dict() #【推荐】d={}非空字典:d={'key':'value','key2':'value2'} #【推荐】d=dict([('k1','v1'),('k2','v2')]) #相当于d={'k1':'v1','k2':'v2'}【类型转换】字典的数据操...

2019-01-27 11:54:58 280

原创 Python中四种组合数据类型--元组

元组:存储一组有序的,可重复的,不可修改的数据 声明空元组:t=tuple()t=()声明非空元组:t=tuple(['hello'])t=('hello',) 如果只有一个元素,要加个逗号,如果不加逗号,声明的就是字符串类型元组的操作很少,只有count和indextuple=(1,2,3,1,2,3,1,1,1)tuple.count(1)p...

2019-01-25 19:23:39 312

原创 Python中4种组合数据类型--列表

4种组合数据类型分别是:    列表  list    元组  tuple    集合  set    字典  dict列表  list:可以存放一组可重复的,有序的,可以修改的数据声明空列表:list=()【推荐】a=list([ ])【不推荐】声明非空列表:list=[1,2,3,4,5]列表的操作方法:增加:u5 = ["hello"...

2019-01-25 09:24:35 724

空空如也

空空如也

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

TA关注的人

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