摘要: 一、修改表 create table t1(id int,name char); alter table t1 rename tt1; # 修改字段 alter table t1 modify id tinyint; alter table t1 change id ID tinyint; alte 阅读全文
posted @ 2020-09-01 14:59 1024bits 阅读(1125) 评论(1) 推荐(0) 编辑
摘要: 一、相关概念 1、数据(Data)描述事物的符号记录称为数据,描述事物的符号既可以是数字,也可以是文字、图片,图像、声音、语言等,数据由多种表现形式,它们都可以经过数字化后存入计算机。2、数据库(DataBase,简称DB)数据库即存放数据的仓库,只不过这个仓库是在计算机存储设备上,而且数据是按一定 阅读全文
posted @ 2020-08-31 20:12 1024bits 阅读(309) 评论(0) 推荐(0) 编辑
摘要: 1虚拟环境作用/优点: 1、使不同应用开发环境相互独立,隔离项目,每个项目有自己依赖的模块和包,不同模块和包的版本就不会相互影响 (解决不同项目依赖的模块版本不同的问题) 2、环境升级不影响其他应用,也不会影响全局的python环境3、防止出现包管理混乱及包版本冲突 2 pycharm中创建项目时选 阅读全文
posted @ 2020-08-27 16:27 1024bits 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 1、 内存分为内核缓冲区和用户缓冲区(网络下载的资源,硬盘加载的资源,先放到内核缓冲区 》copy到应用程序的缓冲区,应用程序才能用这个数据)2、io模型: -阻塞io(BIO) ~用户进程从发起请求,到最终拿到数据前,一直挂起等待; 数据会由用户进程完成拷贝 -非阻塞io(NIO) ~用户进程发起 阅读全文
posted @ 2020-08-27 16:05 1024bits 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 一、定时器 Timer的父类是Thread,所以定时器这里用的是线程 # 多长时间之后执行一个任务 from threading import Timer def task(name): print('我是大帅比--%s'%name) if __name__ == '__main__': # t = 阅读全文
posted @ 2020-08-27 15:43 1024bits 阅读(256) 评论(0) 推荐(0) 编辑
摘要: 一、验证GIL锁的存在方式 GIL锁:全局解释器锁 GIL锁作用:因为垃圾回收线程不是线程安全的,所有线程必须拿到这把锁,才能执行 from threading import Thread from multiprocessing import Process def task(): while T 阅读全文
posted @ 2020-08-26 16:07 1024bits 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 一、线程理论 计算机相当于大工厂,工厂里有一个个的车间(进程),有很多人(线程)干不同的事真正干活的是线程--》线程是cup调度的最小单位进程是资源分配的最小单位,线程是CPU调度的最小单位。每一个进程中至少有一个线程线程开销更小,更轻量级 二、开启线程的两种方式 1、函数式 #第一种 from t 阅读全文
posted @ 2020-08-25 21:24 1024bits 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 一、生产者消费者模型 1、理论: -生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题。 -生产者和消费者彼此之间不直接通讯,而通过阻塞队列来进行通讯,所以生产者生产完数据之后不用等待消费者处理,直接扔给阻塞队列,消费者不找生产者要数据,而是直接从阻塞队列里取 -阻塞队列就相当于一个缓冲 阅读全文
posted @ 2020-08-24 15:43 1024bits 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 一、创建进程的两种方式 #第一种 from multiprocessing import Process import time def task(n): print('我是子进程') time.sleep(n) print('子进程结束') if __name__ == '__main__': # 阅读全文
posted @ 2020-08-24 15:10 1024bits 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 1、操作系统编写的语言:汇编语言,C语言 2、 wins: cmd其实就是一个软件与操作系统打交道 linux:shell解释器 3、现在摩尔定律越来越不适用了,所以会出现技术革新,比如出现go语言,但并未找到真正更好的办法 4、双击(启动程序)也叫交互式 5、进程的创建 :操作系统底层会调用不同的 阅读全文
posted @ 2020-08-20 16:35 1024bits 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 一、进程应用 1、multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程。Python提供了 multiprocessing。 multiprocessing模块 阅读全文
posted @ 2020-08-20 16:33 1024bits 阅读(451) 评论(0) 推荐(0) 编辑
摘要: 一、并发与并行 无论是并行还是并发,在用户看来都是'同时'运行的,不管是进程还是线程,都只是一个任务而已,真是干活的是cpu,cpu来做这些任务,而一个cpu同一时刻只能执行一个任务。 1、 并发:是伪并行,即看起来是同时运行。单个cpu+多道技术就可以实现并发,(并行也属于并发) 单CPU,多进程 阅读全文
posted @ 2020-08-20 16:04 1024bits 阅读(188) 评论(0) 推荐(0) 编辑
摘要: 一、程序 程序就是一堆代码文件二、进程 进程一个抽象的概念 进程指的是程序的运行过程 进程是操作系统最核心的概念,进程的概念起源于操作系统 操作系统的其他所有内容都是围绕进程概念展开,研究操作系统就是在研究进程。ps:例如:要做一道菜, 食谱就是程序,计算机科学家就是处理器(cpu),而做菜的各种原 阅读全文
posted @ 2020-08-20 00:15 1024bits 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 1、需要掌握 #1 查看对象下面有哪些属性 class Foo: pass obj=Foo() print(dir(obj)) #obj.下面都有哪些属性 #2 计算商 和余数 print(divmod(10,3)) #(3,1) (商,余数) #3 打印 索引 对应循环取出的可迭代对象里的值 fo 阅读全文
posted @ 2020-08-19 15:06 1024bits 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 一、猴子补丁 第三方模块:下载 pip3 import json import ujson #在用之前先改好,不能多用,不然程序会被改的很乱 json.dumps=ujson.dumps json.loads=ujson.loads import json import ujson # pip3 i 阅读全文
posted @ 2020-08-19 11:07 1024bits 阅读(167) 评论(0) 推荐(0) 编辑