- 军军小站|张军博客
搜索到与相关的文章
Python

轻松理解Python 中的 descriptor

定义通常,一个descriptor是具有“绑定行为”的对象属性。所绑定行为可通过descriptor协议被自定义的__get__(),__set__()和__delete__()方法重写。如果一个对象的上述三个方法任意一个被重写,则就可被称为descriptor。属性的默认操作是从对象字典中获取、设置和删除一个属性。例如,a.x有一个查找链,先a.__dict__['x'],若没有则type(a).__dict__['x'],若没有增往上查找父类直到元类。

系统 2019-09-27 17:53:41 1770

Python

Python面向对象编程——绑定方法与非绑定方法

Python面向对象编程——绑定方法与非绑定方法一、类中定义的函数分成两大类1、绑定方法(绑定给谁,谁来调用就自动将它本身当作第一个参数传入1)绑定到类的方法:用classmethod装饰器装饰的方法。为类量身定制类.boud_method(),自动将类当作第一个参数传入(其实对象也可调用,但仍将类当作第一个参数传入)2)绑定到对象的方法:没有被任何装饰器装饰的方法。为对象量身定制对象.boud_method(),自动将对象当作第一个参数传入(属于类的函数

系统 2019-09-27 17:53:30 1770

Python

Python 命令行之旅 —— 深入 argparse (一)

作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHu...前言在第一篇“初探argparse”的文章中,我们初步掌握了使用argparse的四部曲,对它有了一个基本的体感。但是它具体支持哪些类型的参数?这些参数该如何配置?本文将带你深入了解argparse的参数们。本系列文章默认使用Python3作为解释器进行讲解。若你仍在使用Python2,请注

系统 2019-09-27 17:53:22 1770

Python

python实现证件照换底功能

本来是在找交通识别的程序,然后凑巧看见了证件照换底,于是学习了一下~一开始在网上找了一个很普遍写的程序,但是效果并不好,想要放弃了,然后看见了这个,参考:pythonopencv实现证件照换底功能本人基于此做了一些改进,便于自己运行和调试,还加了中值滤波,本人觉得效果还不错~代码:importcv2importnumpyasnpdefcvtBackground(path,color):"""功能:给证件照更换背景色(常用背景色红、白、蓝)输入参数:path

系统 2019-09-27 17:53:20 1770

Python

简单了解Python3里的一些新特性

概述到2020年,Python2的官方维护期就要结束了,越来越多的Python项目从Python2切换到了Python3。其实在实际工作中,很多伙伴都还是在用Python2的思维写Python3的代码。给大家总结一下Python3一些新的更方便的特性!希望你们看完后也能高效率的编写代码f-strings(3.6+)在Python里面,我们经常使用format函数来格式化字符串,例如:user="JaneDoe"action="buy"log_message

系统 2019-09-27 17:53:11 1770

Python

为python设置socket代理的方法

首先,你得下载SocksiPy这个.解压出来之后里面会有一个socks.py文件.然后你可以把这个文件复制到python安装目录里面的Lib\site-packages中.或者把这个文件复制到程序所在的目录中.然后就可以再程序中使用socket代理来编写程序了.下面是示例代码importsocksimportsocketsocks.setdefaultproxy(socks.PROXY_TYPE_SOCKS5,"127.0.0.1",8088)socket

系统 2019-09-27 17:53:08 1770

Python

Python进阶之路 3.4.5 断言

3.4.5断言断言(assertions)的使用方式类似于if语句,只是在不满足条件时,会直接抛出异常。类似于下面的if语句(伪代码)ifnotcondition:#如果不满足条件,会直接抛出异常,程序会中断crashprogram那么究竟为什么需要这样的代码呢?主要原因为需要检测程序在某个地方是否满足条件,如果不满足条件,应该及时通知开发人员,而不是将这些bug隐藏起来,知道关键的时候在崩溃。其实在TDD中经常使用断言,TDD会在程序发现异常时执行断言,

系统 2019-09-27 17:52:20 1770

Python

第十五章、Python多线程同步锁,死锁和递归锁

目录第十五章、Python多线程同步锁,死锁和递归锁1.引子:2.同步锁3.死锁引子:4.递归锁RLock原理:不多说,放代码总结:5.大总结第十五章、Python多线程同步锁,死锁和递归锁1.引子:1.创建线程对象t1=threading.Thread(target=say,args=('tony',))2.启动线程t1.start()后面又说了两个点就是join和守护线程的概念​以上就是python多线程的基本使用​说明:前面说的两个功能是相互独立的,

系统 2019-09-27 17:51:52 1770

Python

Google推出了Python最牛逼的编辑器

一、新建云端notebook打开https://colab.research.google.com网站,我们就能看到浏览器中出现了新建pythonnotebook二、分享代码有时候同学之间或者同事之间分享项目代码,过去都是使用邮箱,繁琐费事。现在一键分享,这里我是给自己的邮箱里转发然后大邓打开自己的邮箱,wow,6666三、团队成员可以评论代码比如在一个团队中,有的人写错了代码,我们可以在远隔十万八千的另外一台电脑上做评论,提示错误。四、链接到stacko

系统 2019-09-27 17:51:44 1770