假设红包金额为money,数量是num,并且红包金额money>=num*0.01原理如下,从1~money*100的数的集合中,随机抽取num-1个数,然后对这些数进行排序,在排序后的集合前后分别插入0和money*100,组成新的集合用新的集合,(后一个数-前一个数)/100得到红包的大小然后使用红包的时候,从num个红包集合中随机拿一个,既是随机红包了defredbags(money,num=10):importrandomchoice=random
系统 2019-09-27 17:54:19 2261
Ubuntu版本:1.tesseract-ocr安装sudoapt-getinstalltesseract-ocr2.pytesseract安装sudopipinstallpytesseract3.Pillow安装sudopipinstallpillow开始写代码:fromPILimportImagefrompytesseractimportpytesseractimage=Image.open('test.png')code=pytesseract.im
系统 2019-09-27 17:53:39 2261
实例引入我们知道Python是一种动态语言,在声明一个变量时我们不需要显式地声明它的类型,例如下面的例子:a=2print('1+a=',1+a)运行结果:1+a=3这里我们首先声明了一个变量a,并将其赋值为了2,然后将最后的结果打印出来,程序输出来了正确的结果。但在这个过程中,我们没有声明它到底是什么类型。但如果这时候我们将a变成一个字符串类型,结果会是怎样的呢?改写如下:a='2'print('1+a=',1+a)运行结果:TypeError:unsu
系统 2019-09-27 17:50:53 2261
在Python中定义函数,可以用必选参数(位置参数),默认参数,可变参数,关键字参数和命名关键字参数,这5种参数都可以组合使用。但参数定义的顺序必须是:必选参数(位置参数)默认参数可变参数命名关键字参数关键字参数例如:定义:deff1(x,y=0,*args,z,**kw):print(x,y,args,z,kw)调用:f1(1,2,3,4,5,z=6,p=7,q=8)输出:12(3,4,5)6,{'p':7,'q':8}定义:deff2(x,y=0,*,
系统 2019-09-27 17:50:10 2261
https://www.liaoxuefeng.com/wiki/1016959663602400/1017099478626848#0完成该文章的作业:print("请输入身高,比如1.78:")a1=input('身高:')a2=float(a1)print("请输入体重,比如60:")b=input('体重:')b1=float(b)#b1=80#a1=1.75c=b1/pow(a2,2)print(c)ifc>32:print("严重肥胖")eli
系统 2019-09-27 17:49:05 2261
上一篇文章介绍了线程的使用。然而Python中由于GlobalInterpreterLock(全局解释锁GIL)的存在,每个线程在在执行时需要获取到这个GIL,在同一时刻中只有一个线程得到解释锁的执行,Python中的线程并没有真正意义上的并发执行,多线程的执行效率也不一定比单线程的效率更高。如果要充分利用现代多核CPU的并发能力,就要使用multipleprocessing模块了。0x01multipleprocessing与使用线程的threading
系统 2019-09-27 17:47:03 2261
引用计数在Python源码中,每一个对象都是一个结构体表示,都有一个计数字段。typedefstruct_object{intob_refcnt;struct_typeobject*ob_type;}PyObject;PyObject是每个对象必有的内容,其中ob_refcnt就是作为引用计数。当一个对象有了新的引用时,它的ob_refcnt就会增加,引用它的对象被删除时则减少。一旦对象的引用计数为0,该对象立即被回收,占用空间就会被释放。优点简单易用实时
系统 2019-09-27 17:45:38 2261
我们在开发程序的时候,有时候需要开发一些自动化的任务,执行完之后,将结果自动的发送一份邮件,python发送邮件使用smtplib模块,是一个标准包,直接import导入使用即可,代码如下:importsmtplibfromemail.mime.textimportMIMETextemail_host='smtp.163.com'#邮箱地址email_user='xxxx@163.com'#发送者账号email_pwd='xxxx'#发送者密码mailli
系统 2019-09-27 17:57:40 2260
本文实例讲述了python中ConfigParse模块的用法,分享给大家供大家参考。具体方法如下:写配置一般用ConfigParse.RawConfigParse类读配置用ConfigParse.ConfigParse类代码如下:写配置文件:importConfigParserimporttimeconfig=ConfigParser.RawConfigParser()task={}task["id"]=1task["package"]="exe"task
系统 2019-09-27 17:55:57 2260
urls.py的配置写法一般有三种方式。1.第一种是导入视图的方式,就是TheDjangoBook里面样例的写法:fromblog.viewsimportindexurl(r'^nowamagic/',index)2.第二种方法是视图处理方法,看代码就知道是怎么回事了。url(r'^nowamagic/','test.views.index')3.第三种是把模型与视图写在前缀里。urlpatterns=patterns('blog.views',url(r
系统 2019-09-27 17:55:49 2260
字典的特点:以键值对的形式存在,无序排序;key必须唯一不重复,且不能使用可变对象声明一个字典d={}print(d)print(type(d))增:d[1]=‘a’d[2]=‘c’d[3]=‘b’print(d)d.update({4:‘z’})print(d)dict.setdefault(key,value),如果该key不存在,则在字典中插入这个键值对,并返回value;如果该key已存在,则返回字典中key对应的value,原字典不做更新d.se
系统 2019-09-27 17:54:56 2260
一:第一步windows下Anaconda与PyCharm的安装windows下Anaconda与PyCharm的安装与使用(致Python初学者们-Anaconda入门使用指南)或(Python数据分析必备Anaconda安装、快捷键、包安装)二:第二步python环境变量配置(看下文中如何配置环境变量)Anaconda安装后配置环境变量Anaconda安装后在cmd中运算python无效,是环境变量没有生效。正常安装需要有三个,配置好就行。D:\xwa
系统 2019-09-27 17:54:12 2260
属性搜索优先级和descriptor#########################定义#########################数据描述符classDataDesc(object):def__init__(self,*args,**kwargs):passdef__get__(self,instance,cls):print(instanceisNone)return'DataDesc'def__set__(self,instance,valu
系统 2019-09-27 17:50:41 2260
使用Python进行图片和pdf之间的相互转换使用到第三方库PyMuPDF在python环境下对PDF文件的操作。PDF转为图片需新建文件夹pdf2pngimportfitzimportglobdefrightinput(desc):flag=Truewhile(flag):instr=input(desc)try:intnum=eval(instr)iftype(intnum)==int:flag=Falseexcept:print('请输入正整数!')
系统 2019-09-27 17:49:31 2260
socket函数简述socket又称套间字或者插口,是网络通信中必不可少的工具。有道是:“无socket,不网络”。由于socket最早在BSDUnix上使用,而Unix/Linux所奉为经典的至高哲学是“一切皆是文件”。因此socket在使用时也是完全符合这个哲学的,它涉及到listen()、bind()、accept()、write()/read()、close()等基本的类似于文件操作的功能函数。socket用法importsocketsocket.
系统 2019-09-27 17:47:20 2260