自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 资源 (3)
  • 收藏
  • 关注

原创 sourceTree安装与使用

1,下载并安装 sourceTreehttp://downloads.atlassian.com/software/sourcetree/windows/SourceTreeSetup_1.6.14.exe双击安装,安装前要确认 安装了git或是Mercurial。 这里选择git,也可以不选择,等安装完成后也可以再选。2,安装完成,会弹出如下对话框,你可以选择自动下载。我用的是git 直接...

2019-06-05 20:17:53 294

原创 pycharm常用快捷键

1、编辑(Editing)Ctrl + Space 基本的代码完成(类、方法、属性)Ctrl + Alt + Space 快速导入任意类Ctrl + Shift + Enter 语句完成Ctrl + P 参数信息(在方法中调用参数)Ctrl + Q 快速查看文档F1 外部文档Shift + F1 外部文档,进入web文档主页Ctrl + Shif...

2019-05-30 12:28:16 176

原创 前端css小结

标签按照显示的效果可以分为:块元素标签:默认占有一行内联元素标签:默认可以排列在一行常用html标签:1、h1~h6: 标题标签,块元素标签,含有默认样式2、P: 段落标签,块元素标签,含有默认样式3、字符实体:如果想在网页上显示空格,“<”个“>”, 不能直接在代码中写,需要写成它们的字符实体,空格:  小于号:< 大于号 >4、di...

2019-05-13 08:58:25 170

原创 mysql查询操作

– 数据的准备– 创建一个数据库create database python_test charset=utf8;-- 使用一个数据库use python_test;--显示使用的当前数据库是哪个?select databases();--创建一个数据表-- students表create table students( id int unsigned primary...

2019-04-27 08:45:18 177

原创 mysql基础

– 数据库的操作-- 链接数据库mysql -uroot -pmysql -uroot -pmysql-- 退出数据库exit/quit/ctrl+d-- sql语句最后需要有分号;结尾-- 显示数据库版本select version();-- 显示时间select now();-- 查看所有数据库show databases;-- 创建数据库-- cre...

2019-04-27 08:44:32 137

原创 python协程实现多任务下载视频、音乐、图片

进程、线程、协程对比请仔细理解如下的通俗描述有一个老板想要开个工厂进行生产某件商品(例如剪子)他需要花一些财力物力制作一条生产线,这个生产线上有很多的器件以及材料这些所有的 为了能够生产剪子而准备的资源称之为:进程只有生产线是不能够进行生产的,所以老板的找个工人来进行生产,这个工人能够利用这些材料最终一步步的将剪子做出来,这个来做事情的工人称之为:线程这个老板为了提高生产率,想到3种办法...

2019-04-15 19:14:52 855

原创 python协程生成器

生成器利用迭代器,我们可以在每次迭代获取数据(通过next()方法)时按照特定的规律进行生成。但是我们在实现一个迭代器时,关于当前迭代到的状态需要我们自己记录,进而才能根据当前状态生成下一个数据。为了达到记录当前状态,并配合next()函数进行迭代使用,我们可以采用更简便的语法,即生成器(generator)。生成器是一类特殊的迭代器。创建生成器方法1要创建一个生成器,有很多种方法。...

2019-04-15 19:09:29 228

原创 python协程迭代器

迭代器迭代是访问集合元素的一种方式。迭代器是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。1. 可迭代对象我们已经知道可以对list、tuple、str等类型的数据使用for…in…的循环语法从其中依次拿到数据进行使用,我们把这样的过程称为遍历,也叫迭代。但是,是否所有的数据类型都可以放到for…in…的语句中,然后...

2019-04-15 18:57:16 137

原创 python进程池实现文件夹copy器(多进程版)

应用:文件夹copy器(多进程版)import multiprocessingimport osimport timeimport randomdef copy_file(queue, file_name,source_folder_name, dest_folder_name): """copy文件到指定的路径""" f_read = open(source_fo...

2019-04-15 18:47:27 289

原创 python进程池pool

进程池Pool当需要创建的子进程数量不多时,可以直接利用multiprocessing中的Process动态成生多个进程,但如果是上百甚至上千个目标,手动的去创建进程的工作量巨大,此时就可以用到multiprocessing模块提供的Pool方法。初始化Pool时,可以指定一个最大进程数,当有新的请求提交到Pool中时,如果池还没有满,那么就会创建一个新的进程用来执行该请求;但如果池中的进程数...

2019-04-15 18:44:28 153

原创 python进程间的通信queue

进程间通信-QueueProcess之间有时需要通信,操作系统提供了很多机制来实现进程间的通信。Queue的使用可以使用multiprocessing模块的Queue实现多进程之间的数据传递,Queue本身是一个消息列队程序,首先用一个小实例来演示一下Queue的工作原理:#coding=utf-8from multiprocessing import Queueq=Queue(3...

2019-04-15 18:42:25 177

原创 python udp聊天器线程多任务

线程案例:多任务版udp聊天器说明编写一个有2个线程的程序线程1用来接收数据然后显示线程2用来检测键盘数据然后通过udp发送数据要求实现上述要求总结多任务程序的特点参考代码:import socketimport threadingdef send_msg(udp_socket): """获取键盘数据,并将其发送给对方""" while True: ...

2019-04-12 20:23:41 197

原创 python同步,互斥锁,死锁

同步的概念同步就是协同步调,按预定的先后次序进行运行。如:你说完,我再说。"同"字从字面上容易理解为一起动作其实不是,"同"字应是指协同、协助、互相配合。如进程、线程同步,可理解为进程或线程A和B一块配合,A执行到一定程度时要依靠B的某个结果,于是停下来,示意B运行;B执行,再将结果给A;A再继续操作。解决线程同时修改全局变量的方式对于上一小节提出的那个计算错误的问题,可以通过线程同步...

2019-04-12 20:20:44 2011

原创 多线程-共享全局变量问题

多线程-共享全局变量问题多线程开发可能遇到的问题假设两个线程t1和t2都要对全局变量g_num(默认是0)进行加1运算,t1和t2都各对g_num加10次,g_num的最终的结果应该为20。但是由于是多线程同时操作,有可能出现下面情况:在g_num=0时,t1取得g_num=0。此时系统把t1调度为”sleeping”状态,把t2转换为”running”状态,t2也获得g_num=0然后...

2019-04-12 20:15:44 682

原创 python多线程-共享全局变量

多线程-共享全局变量from threading import Threadimport timeg_num = 100def work1(): global g_num for i in range(3): g_num += 1 print("----in work1, g_num is %d---"%g_num)def work2()...

2019-04-12 20:13:44 346

原创 python线程的概念

线程python的thread模块是比较底层的模块,python的threading模块是对thread做了一些包装的,可以更加方便的被使用使用threading模块单线程执行#coding=utf-8import timedef saySorry(): print("亲爱的,我错了,我能吃饭了吗?") time.sleep(1)if __name__ == ...

2019-04-12 20:11:18 300

原创 python中创建线程,锁

并行和并发的区别?并发:指的是任务数多余cpu核数,通过操作系统的各种任务调度算法,实现用多个任务“一起”执行(实际上总有一些任务不在执行,因为切换任务的速度相当快,看上去一起执行而已)并行:指的是任务数小于等于cpu核数,即任务真的是一起执行的真的多任务叫并行,假的多任务叫并发。什么是线程?可以简单理解为同一进程中有多个计数器,每个线程的执行时间不确定,而每个进程的时间片相等,线程是操...

2019-04-09 17:27:30 386

原创 python找出一个列表中相同元素的多个索引

如果直接用X.index(1),只能得到0这一个索引,而我们需要所有索引.l = len(X)zip_list = zip(*(range(l),X))id1 = [z[0] for i,z in enumerate(zip_list) if z[1]==1]或者更简单的id1 = [i for i,x in enumerate(X) if x==1]作者:Kerrwy来源:CSDN...

2019-04-08 17:13:47 5251

原创 python 并发和线程

并发和线程基本概念 - 并行、并发并行, parallel互不干扰的在同一时刻做多件事;如,同一时刻,同时有多辆车在多条车道上跑,即同时发生的概念.并发, concurrency同时做某些事,但是强调同一时段做多件事.如,同一路口,发生了车辆要同时通过路面的事件.队列, 缓冲区类似排队,是一种天然解决并发的办法.排队区域就是缓冲区.解决并发:【 “食堂打饭模型”, ...

2019-04-08 10:16:34 190

原创 Python读写文件

Python读写文件Python读写文件1.open使用open打开文件后一定要记得调用文件对象的close()方法。比如可以用try/finally语句来确保最后能关闭文件。file_object = open(‘thefile.txt’)try:all_the_text = file_object.read( )finally:file_object.close( )注:不能...

2019-04-07 21:07:19 390 1

原创 python中dict操作集合

python中dict操作集合字段是Python是字典中唯一的键-值类型,是Python中非常重要的数据结构,因其用哈希的方式存储数据,其复杂度为O(1),速度非常快。下面列出字典的常用的用途.一、字典中常见方法列表复制代码代码如下:#方法 #描述D.clear() ...

2019-04-07 21:05:28 1157

原创 Python中的random

Python中的random模块用于生成随机数。下面介绍一下random模块中最常用的几个函数。random.randomrandom.random()用于生成一个0到1的随机符点数: 0 <= n < 1.0random.uniform  random.uniform的函数原型为:random.uniform(a, b),用于生成一个指定范围内的随机符点数,两个参数其中一个是...

2019-04-07 21:03:23 297

原创 python中socket使用,IO多路复用,socketserver

1、socket2、IO多路复用3、socketserverSocketsocket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,对于文件用【打开】【读写】【关闭】模式来操作。socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)基本上,Socket 是任何一种计算机网络通讯中最基础的内容...

2019-04-07 09:47:33 1161

原创 python使用单例模式创建MySQL链接

from functools import wrapsimport mysql.connectorfrom sshtunnel import SSHTunnelForwarderdef singleton(cls): instances = {} @wraps(cls) def get_instance(*args, **kw): if cls ...

2019-04-07 08:57:36 756

原创 python实现tcp文件下载器

python实现文件下载器服务器 参考代码如下:from socket import *import sysdef get_file_content(file_name): """获取文件的内容""" try: with open(file_name, "rb") as f: content = f.read() ...

2019-04-07 08:37:06 654

原创 python模拟实现tcp服务器

tcp服务器生活中的电话机如果想让别人能更够打通咱们的电话获取相应服务的话,需要做以下几件事情:买个手机插上手机卡设计手机为正常接听状态(即能够响铃)静静的等着别人拨打tcp服务器如同上面的电话机过程一样,在程序中,如果想要完成一个tcp服务器的功能,需要的流程如下:socket创建一个套接字bind绑定ip和portlisten使套接字变为可以被动链接accept等待客户...

2019-04-07 08:35:10 766 1

原创 python模拟实现tcp客户端

tcp客户端tcp客户端,并不是像之前一个段子:一个顾客去饭馆吃饭,这个顾客要点菜,就问服务员咱们饭店有客户端么,然后这个服务员非常客气的说道:先生 我们饭店不用客户端,我们直接送到您的餐桌上如果,不学习网络的知识是不是 说不定也会发生那样的笑话 ,哈哈所谓的服务器端:就是提供服务的一方,而客户端,就是需要被服务的一方tcp客户端构建流程tcp的客户端要比服务器端简单很多,如果说服务器端...

2019-04-07 08:34:01 1146

原创 深度辨析 Python 的 eval与 exec

Python 提供了很多内置的工具函数(Built-in Functions),在最新的 Python 3 官方文档中,它列出了 69 个。大部分函数是我们经常使用的,例如 print()、open() 与 dir(),而有一些函数虽然不常用,但它们在某些场景下,却能发挥出不一般的作用。内置函数们能够被“提拔”出来,这就意味着它们皆有独到之处,有用武之地。因此,掌握内置函数的用法,就成了我们应...

2019-04-06 21:26:02 146

原创 python实现udp聊天器

import socketdef send_msg(udp_socket): """获取键盘数据,并将其发送给对方""" # 1. 从键盘输入数据 msg = input("\n请输入要发送的数据:") # 2. 输入对方的ip地址 dest_ip = input("\n请输入对方的ip地址:") # 3. 输入对方的port dest...

2019-04-06 21:19:44 387

原创 python3编码转换

str->bytes:encode编码bytes->str:decode解码字符串通过编码成为字节码,字节码通过解码成为字符串。>>> text = '我是文本'>>> text'我是文本'>>> print(text)我是文本>>> bytesText = text.encode()>&...

2019-04-06 21:18:37 1324

原创 python实现udp网络程序-发送、接收数据

udp网络程序-发送、接收数据udp网络程序-发送数据创建一个基于udp的网络程序流程很简单,具体步骤如下:创建客户端套接字发送/接收数据关闭套接字代码如下:#coding=utf-8from socket import *# 1. 创建udp套接字udp_socket = socket(AF_INET, SOCK_DGRAM)# 2. 准备接收方的地址# '1...

2019-04-06 21:16:50 2565

原创 Python eval 函数妙用

eval功能:将字符串str当成有效的表达式来求值并返回计算结果。语法: eval(source[, globals[, locals]]) -> value参数:source:一个Python表达式或函数compile()返回的代码对象globals:可选。必须是dictionarylocals:可选。任意map对象实例展示:可以把list,tuple,dict和strin...

2019-04-02 17:24:00 156

原创 python 中给文件加锁,fcntl模块

如果没有fcntl模块则用sudo pip install fcntl安装模块简单说明:打开文件,不存在则创建之  f = open(’./test’,‘w’)  fcntl.flock(f,fcntl.LOCK_EX)  这样就对文件test加锁了,如果有其他进程对test文件加锁,则不能成功,会被阻塞,但不会退出程序。  解锁:fcntl.flock(f,fcntl.LOCK_U...

2019-04-02 17:16:23 2876

原创 Python进程、线程、线程之间的关系

一、从操作系统角度 操作系统处理任务, 调度单位是 进程 和 线程 。1.进程: 表示一个程序的执行活动 (打开程序、读写程序数据、关闭程序)2.线程: 执行某个程序时, 该进程调度的最小执行单位 (执行功能1,执行功能2) 一个程序至少有一个进程 一个进程至少有一个线程1.并行: 需要处理的任务数 == CPU核心数量 两个任务 两个核心 任务1:------------- 任务2:---...

2019-04-02 17:07:24 998

原创 python中format函数应用

format函数是一种格式化字符串的函数str.format(),此函数可以快速处理各种字符串。语法它通过{}和:来代替%。请看下面的示例,基本上总结了format函数在python的中所有用法#通过位置print '{0},{1}'.format('chuhao',20)print '{},{}'.format('chuhao',20)print '{1},{0},{1}'.f...

2019-04-02 17:05:49 1681

原创 python实现双向链表原理教程

双向链表一种更复杂的链表是“双向链表”或“双面链表”。每个节点有两个链接:一个指向前一个节点,当此节点为第一个节点时,指向空值;而另一个指向下一个节点,当此节点为最后一个节点时,指向空值。操作is_empty() 链表是否为空length() 链表长度travel() 遍历链表add(item) 链表头部添加append(item) 链表尾部添加insert(pos, item)...

2019-04-02 08:37:56 327

原创 python实现单向循环链表

单向循环链表单链表的一个变形是单向循环链表,链表中最后一个节点的next域不再为None,而是指向链表的头节点。操作is_empty() 判断链表是否为空length() 返回链表的长度travel() 遍历add(item) 在头部添加一个节点append(item) 在尾部添加一个节点insert(pos, item) 在指定位置pos添加节点remove(item) 删除...

2019-04-02 08:37:45 393

原创 python实现栈的操作

栈结构实现栈可以用顺序表实现,也可以用链表实现。栈的操作Stack() 创建一个新的空栈push(item) 添加一个新的元素item到栈顶pop() 弹出栈顶元素peek() 返回栈顶元素is_empty() 判断栈是否为空size() 返回栈的元素个数class Stack(object): """栈""" def __init__(self): ...

2019-04-02 08:37:35 4006

原创 python实现单链表原理教程

单向链表单向链表也叫单链表,是链表中最简单的一种形式,它的每个节点包含两个域,一个信息域(元素域)和一个链接域。这个链接指向链表中的下一个节点,而最后一个节点的链接域则指向一个空值。单向链表图示表元素域elem用来存放具体的数据。链接域next用来存放下一个节点的位置(python中的标识)变量p指向链表的头节点(首节点)的位置,从p出发能找到表中的任意节点。节点实现class Si...

2019-04-01 19:33:27 12954 8

原创 python实现二叉树广度优先遍历,先序遍历,中序遍历,后续遍历

# 二叉树广度优先遍历class Node(): def __init__(self, item): self.item = item self.lchild = None self.rchild = Noneclass BinaryTree(): def __init__(self, node=None): ...

2019-04-01 16:13:20 434

脚本--更新时间:2月3日.zip

强调:本教程只是稍微把原@Tychxn 提供的 wiki 细化,再次感谢提供如此简洁方便的脚本! 抢购受多种因素影响:网速、账号质量、运气等等,仅供娱乐,认真就输了!! 本脚本完全免费,切勿用于出售或违法用途,脚本原保留追究刑事或民事责任权力! 本人只提供教程细化,不提供任何疑问解答或其他事故处理!!

2020-02-03

python基础

该文档,写了python基础语法的应用,区分总结,字符串,文件基础操作

2019-03-12

python基础语法知识点

python基础语法总结介绍,Python,if条件,循环,函数,⾯向对象,可变类型,字符串,引用,文件操作,异常处理,模块与包

2019-03-12

空空如也

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

TA关注的人

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