利用python库random,string生成大小写字母和数字的随机验证码importrandomimportstringdefgenerate_code(bit_num):''':parambit_num:生成验证码位数:return:返回生成的验证码'''all_str=string.printable.split('!')[0]code=''.join([random.choice(all_str)foriinrange(bit_num)])ret
系统 2019-09-27 17:54:02 1922
range([start],[end],[long])描述:根据range里的参数生成指定范围指定步长的一个序列参数:[start]——指定范围的左边界,可取到[end]——指定范围的右边界,不可取到[long]——步长,若无步长,默认为1返回值:列表实例:>>>range(0,6,2)[0,2,4]>>>range(5)[0,1,2,3,4]xrange()描述:用法与range完全相同,生成的不是数组,而是一个生成器实例:>>>xrange(0,6,2
系统 2019-09-27 17:54:01 1922
之前了解到itchat乃至于wxpy时是利用tuling聊天机器人的接口。调用接口并保存双方的问答结果可以作为自己的问答词库的一个数据库累计。这些数据可以用于自己训练。而最近希望获取一些语音资源,用于卷积神经网络的训练。。--------------------------------------------------------------------------------首先wxpy是itchat的升级版,通过wxpybot.core即可原封不动的
系统 2019-09-27 17:53:42 1922
微信订阅号:Rabbit_svip本次笔记基于python3.7在大多数编程语言中,注释都是一项非常有用且常用的功能。在python中有3种注释方法。以#号开头三个单引号(''')三个双引号(""")以#号开头#sayhiprint("HelloWorld!")print("Python~")#这是一条注释#号后面跟着的部分都属于注释。#号适合用在单行注释。三个单引号(''')和三个双引号(""")'''这是多行注释,使用单引号。这是多行注释,使用单引号。
系统 2019-09-27 17:53:23 1922
Python面向对象编程——异常处理一、什么是异常异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止),在python中,错误触发的异常如下:而错误分成两种1、语法错误(这种错误,根本过不了python解释器的语法检测,必须在程序执行前就改正)#语法错误示范一if#语法错误示范二deftest:pass#语法错误示范三classFoopass#语法错误示范四print(haha)2、
系统 2019-09-27 17:53:13 1922
最近在做游戏服务分层的时候,一直想把mysql的访问独立成一个单独的服务DBGate,原因如下:请求收拢到DBGate,可以使DBGate变为无状态的,方便横向扩展当请求量或者存储量变大时,mysql需要做分库分表,DBGate可以内部直接处理,外界无感知通过restful限制对数据请求的形式,仅支持简单的get/post/patch/put进行增删改查,并不支持复杂查询。这个也是和游戏业务的特性有关,如果网站等需要复杂查询的业务,对此并不适合DBGate
系统 2019-09-27 17:52:45 1922
作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article前言在前面三篇介绍argparse的文章中,我们全面了解了argparse的能力,相信不少小伙伴们都已经摩拳擦掌,想要打造一个属于自己的命令行工具。本文将以我们日常工作中最常见的git命令为例,讲解如何使用argparse库来实现一个真正可用的命令行程序。本系列文章默认
系统 2019-09-27 17:52:35 1922
今天接到一个新的任务,要对一个140多M的csv文件进行数据处理,总共有170多万行,尝试了导入本地的MySQL数据库进行查询,结果用Navicat导入直接卡死....估计是XAMPP套装里面全默认配置的MySQL性能不给力,又尝试用R搞一下吧结果发现光加载csv文件就要3分钟左右的时间,相当不给力啊,翻了翻万能的知乎发现了Python下的一个神器包:Pandas(熊猫们?),加载这个140多M的csv文件两秒钟就搞定,后面的分类汇总等操作也都是秒开,太牛
系统 2019-09-27 17:52:33 1922
1.锁:Lock(1次放1个)同步锁线程安全,多线程操作时,内部会让所有线程排队处理。如:list/dict/Queue线程不安全+人=>排队处理。需求:a.创建100个线程,在列表中追加8b.创建100个线程v=[]锁-把自己的添加到列表中。-在读取列表的最后一个。解锁以后锁一个代码块:importthreadingimporttimev=[]lock=threading.Lock()deffunc(arg):lock.acquire()#锁的区域---
系统 2019-09-27 17:52:33 1922
在配置python环境,并安装所需包后,运行下列代码~importpandasaspdfromsqlalchemyimportcreate_engineimportcx_Oracle#进行oracle服务器设置,用户名;密码;HOST数据库IP地址;PORT端口号;SERVICE_NAMEdb=cx_Oracle.connect('userid','password','10.10.1.10:1521/dbinstance')print(db.versio
系统 2019-09-27 17:52:32 1922