编程技术 - 军军小站|张军博客
Python

Python自定义类中内部函数:__repr__()和__string__

我们在定义Python类时,经常会看到比较好的代码中,都有__repr__和__string__,两个内部函数的定义。但是我一直很少关注它们的区别和具体应用场景。稍微做个小结。1.__foo()__在python中表示__foo__是一个私有private函数,在CookBookpp254中,解释为,该函数不会被子类的相同名称的函数重载。一般地说,类中以“下划线”开头定义的变量或者函数都是私有变量或者内部函数,区别是:1.1单下划线开始的变量或者函数表示非

系统 2019-09-27 17:46:49 1823

Python

Python获取当前脚本文件夹(Script)的绝对路径方法代码

Python脚本有一个毛病,当使用相对路径时,被另一个不同目录下的py文件中导入时,会报找不到对应文件的问题。感觉是当前工作目录变成了导入py文件当前目录。如果你有配置文件的读取操作,然后都放在一个py文件中,而你又用的是相对路径,而且这个py文件在多个不同目录下的py文件中被导入,那就呵呵了。。。还是用绝对路径吧。解决这个问题,可以用绝对路径。当然是自动的绝对路径,而不是每次都手动给前缀赋值,让脚本自动寻找当前文件的绝对路径。此处分享在python下获取

系统 2019-09-27 17:46:48 1823

Python

2019 版_Python 常见的 170 道面试题全解析:编码规范

原文链接:https://gitbook.cn/books/5cfdc7e67d79973578df3426/index.html7.什么是PEP8?8.了解Python之禅么?9.了解docstring么?10.了解类型注解么?11.例举你知道Python对象的命名规范,例如方法或者类等12.Python中的注释有几种?13.如何优雅的给一个函数加注释?14.如何给变量加注释?15.Python代码缩进中是否支持Tab键和空格混用。16.是否可以在一句i

系统 2019-09-27 17:46:40 1823

Python

【Python练习圣典】字典dictionary高级操作

1.字典键-值对中,值元素的便捷创建增减主要是利用collections中的defaultdict普通复杂过程:pairs=[('a',1),('a',2),('b',2)]d={}forkey,valueinpairs:ifkeynotind:d[key]=[]d[key].append(value)或d={}#普通字典d.setdefault('a',[]).append(1)d.setdefault('a',[]).append(2)d.setdef

系统 2019-09-27 17:46:19 1823

Python

Python使用百度api做人脸对比的方法

安装SDK:pipinstallbaidu-aip如果在pycharm里也可以在setting----ProjectInterpreter---右边绿色加号,输入baidu,安装baidu-aip入门代码:先去百度AI开放平台注册一个账号,然后开通人脸识别,免费的http://ai.baidu.com/tech/face之后把得到的Apikeysecretkey填进去。fromaipimportAipFace"""你的APPIDAKSK"""APP_ID=

系统 2019-09-27 17:45:59 1823

Python

6.Python装饰器

1.开放封闭原则​什么是开放封闭原则?有的同学问开放,封闭这是两个反义词这还能组成一个原则么?这不前后矛盾么?其实不矛盾。开放封闭原则是分情况讨论的。​我们的软件一旦上线之后(比如你的软件主要是多个函数组成的),那么这个软件对功能的扩展应该是开放的,比如你的游戏一直在迭代更新,推出新的玩法,新功能。但是对于源代码的修改是封闭的。你就拿函数举例,如果你的游戏源代码中有一个函数是闪躲的功能,那么你这个函数肯定是被多个地方调用的,比如对方扔雷,对方开枪,对方用刀

系统 2019-09-27 17:45:53 1823

Python

CentOS配置python操作

centos7.3安装python查看当前python情况[root@localhost/]#cd/[root@localhostbin]#cd/usr/bin[root@localhostbin]#lspython*pythonpython2python2.7[root@localhostbin]#ls-alpython*修改软连接[root@localhostbin]#mvpythonpython.bak开始做下载准备[root@localhostbi

系统 2019-09-27 17:45:46 1823

Python

深入理解Python中各种方法的运作原理

方法在Python中是如何工作的方法就是一个函数,它作为一个类属性而存在,你可以用如下方式来声明、访问一个函数:>>>classPizza(object):...def__init__(self,size):...self.size=size...defget_size(self):...returnself.size...>>>Pizza.get_sizePython在告诉你,属性_get_size是类Pizza的一个未绑定方法。这是什么意思呢?很快我们

系统 2019-09-27 17:45:43 1823

Python

Python文件读取的3种方法及路径转义

1.文件的读取和显示方法1:复制代码代码如下:f=open(r'G:\2.txt')printf.read()f.close()方法2:复制代码代码如下:try:t=open(r'G:\2.txt')printt.read()finally:ift:t.close()方法3:复制代码代码如下:withopen(r'g:\2.txt')asg:forlineing:printlinepython虽然每次打开文件都要关闭,但是可能会由于异常导致未关闭,因此我们

系统 2019-09-27 17:45:38 1823

Python

史诗级干货-python爬虫之增加CSDN访问量

史诗级干货-python爬虫之增加CSDN访问量搜索微信公众号:‘AI-ming3526’或者’计算机视觉这件小事’获取更多算法、机器学习干货csdn:https://blog.csdn.net/baidu_31657889/github:https://github.com/aimi-cn/AILearners文章初衷:最近CSDN官方出了一个流量扶持计划,针对原创文章进行百度推广,我尝试推了几篇,效果也不是很好,或者是自己文章水平不够,太水~就想着增加

系统 2019-09-27 17:45:32 1823

Python

Python里隐藏的“禅”

在python的lib目录里有一个:this.py,它其实是隐藏着一首诗,源码如下:复制代码代码如下:s="""GurMrabsClguba,olGvzCrgrefOrnhgvshyvforggregunahtyl.Rkcyvpvgvforggregunavzcyvpvg.Fvzcyrvforggregunapbzcyrk.Pbzcyrkvforggregunapbzcyvpngrq.Syngvforggregunaarfgrq.Fcnefrvforggr

系统 2019-09-27 17:38:46 1823

Python

Python的内存泄漏及gc模块的使用分析

一般来说在Python中,为了解决内存泄漏问题,采用了对象引用计数,并基于引用计数实现自动垃圾回收。由于Python有了自动垃圾回收功能,就造成了不少初学者误认为自己从此过上了好日子,不必再受内存泄漏的骚扰了。但如果仔细查看一下Python文档对__del__()函数的描述,就知道这种好日子里也是有阴云的。下面摘抄一点文档内容如下:Somecommonsituationsthatmaypreventthereferencecountofanobjectfr

系统 2019-09-27 17:38:39 1823

Python

举例讲解Python程序与系统shell交互的方式

概述考虑这样一个问题,有hello.py脚本,输出”hello,world!”;有TestInput.py脚本,等待用户输入,然后打印用户输入的数据。那么,怎么样把hello.py输出内容发送给TestInput.py,最后TestInput.py打印接收到的”hello,world!”。下面我来逐步讲解一下shell的交互方式。hello.py代码如下:#!/usr/bin/pythonprint"hello,world!"TestInput.py代码如

系统 2019-09-27 17:38:38 1823

Python

对于Python编程中一些重用与缩减的建议

返璞归真许多流行的玩具都以这样一个概念为基础:简单的积木。这些简单的积木可通过多种方式组合在一起构造出全新的作品――有时甚至完全令人出乎意料。这一概念同样适用于现实生活中的建筑领域,将基本原材料组合在一起,形成有用的建筑物。平凡无奇的材料、技术和工具简化了新建筑物的建造过程,同样也简化了对新踏入此领域的人员的培训。相同的基本概念也适用于计算机程序开发技术,包括以Python编程语言编写的程序。本文介绍了使用Python创建基本构件(buildingbloc

系统 2019-09-27 17:38:30 1823

Python

Python中__name__的使用实例

1.如果模块是被导入,__name__的值为模块名字2.如果模块是被直接执行,__name__的值为'__main__'Py1.py复制代码代码如下:#!/usr/bin/envpythondeftest():print'__name__=',__name__if__name__=='__main__':test()Py2.py复制代码代码如下:#!/usr/bin/envpythonimportPy1.pydeftest():print'__name__

系统 2019-09-27 17:38:30 1823