拥有Python标签的文章
Python

跟老齐学Python之类的细节

这几天和几个朋友以各种途径讨论过OOP的相关问题,他们是:令狐虫、Frank、晋剑、小冯大家对OOP有不同看法,所谓工程派和学院派看法不一致。从应用的角度看,工程派的观点是值得推荐的,那就是:不用太在意内部是怎么工作的,只要能够解决眼下的问题即可。但是,对于学习者而言,如果仅仅停留在工程派的层面(特别提醒,上述几位朋友都是工程派的大侠,他们可不是简单地能够使用,其实是更高层次的“无招胜有招”),学习者可能感觉有点不透彻。所以,学习者,特别是初学者,要知道一

系统 2019-09-27 17:55:20 1711

Python

shiboken绑定C++供python使用

C++类函数封装给python调用,大致分为三个部分,第一部分是把我们的C++类函数等封装成一个dll,即动态库。第二部分是生成一个绑定代码,就是用shiboken2根据我们需要封装暴露的文件,生成pythonC++代码。然后第三部分,就是根据第一和第二部分生成的库和代码,进一步封装成py库。然后python文件直接可以调用该库。具体代码如下,源码用的是python的官方源码。主要讲解每个部分的使用。源码:------------------icecrea

系统 2019-09-27 17:55:19 1711

Python

用python收取邮件的一个实例

背景有一个工作邮箱,会接收许多人不断地投递的简历。由于邮件数量比较多,因此产生了一个需求。要求自动将邮件从邮件服务器取回到本地,并将邮件的基本信息存入本地的sqlite数据库。邮件的正文以单独文件的形式存放在文件夹下。实现备注:在python2.7下测试运行正常,如果用python3,可能需要对代码稍做修改。1,邮件配置参数文件mail.conf[mail163]#此外应写上你实际的帐号与密码user=xxxx@163.compassword=xxxxxp

系统 2019-09-27 17:55:14 1711

Python

浅谈python内置变量-reversed(seq)

1、简单解释就是:反转一个序列对象例子1:deffun3():x=[3,6,9]foriinreversed(x):print(i,end=',')fun3()输出:》》》9,6,3,例子2:>>>a=range(5)>>>arange(0,5)>>>list(a)[0,1,2,3,4]>>>a1=reversed(a)>>>list(a1)[4,3,2,1,0]以上这篇浅谈python内置变量-reversed(seq)就是小编分享给大家的全部内容了,希

系统 2019-09-27 17:55:03 1711

Python

二分查找(Python)

1、BinarySearch算法简介二分查找,它的时间复杂度是O(logn)。其核心思想有点类似分治思想。即每次都通过跟区间中的中间元素对比,将待查找的区间缩小为一半,直到找到要查找的元素,或者区间被缩小为0。但是二分查找的代码实现比较容易写错。你需要着重掌握它的三个容易出错的地方:循环退出条件、mid的取值,low和high的更新。二分查找虽然性能比较优秀,但应用场景也比较有限。底层必须依赖数组,并且还要求数据是有序的。对于较小规模的数据查找,我们直接使

系统 2019-09-27 17:54:58 1711

Python

python之mock模块基本使用方法详解

mock简介mock原是python的第三方库python3以后mock模块已经整合到了unittest测试框架中,不用再单独安装Mock这个词在英语中有模拟的意思,因此我们可以猜测出这个库的主要功能是模拟一些东西准确的说,Mock是Python中一个用于支持单元测试的库,它的主要功能是使用mock对象替代掉指定的Python对象,以达到模拟对象的行为既然mock已经被整合到了unittest单元测试框架中,可想而知mock的目的就是为了让我们更好的进行测

系统 2019-09-27 17:54:56 1711

Python

Python 硬币兑换问题

硬币兑换问题:给定总金额为A的一张纸币,现要兑换成面额分别为a1,a2,....,an的硬币,且希望所得到的硬币个数最少。#动态规划思想dp方程式如下#dp[0]=0#dp[i]=min{dp[i-coins[j]]+1},且其中i>=coins[j],0<=j

系统 2019-09-27 17:54:53 1711

Python

python创建数值列表和if语句,for循环的综合练习

阅读更多#1-20的列表a=list(range(1,21))print(a)#1-10000的列表squares=[]forvalueinrange(1,10001):square=valuesquares.append(square)print(squares)#1-10000的列表,核实从1开始10000结束,求1-10000之和a=list(range(1,10001))print(a)print(min(a))print(max(a))print

系统 2019-09-27 17:54:50 1711

Python

python判断文件夹内是否存在指定后缀文件的实例

该代码主要是基于python实现判断指定文件夹下是否存在指定后缀的文件。代码如下:importosYour_Dir='你的文件夹/'Files=os.listdir(Your_Dir)forkinrange(len(Files)):#提取文件夹内所有文件的后缀Files[k]=os.path.splitext(Files[k])[1]Str2=['.wav','.mp3','.mp4']iflen(list(set(Str2).intersection(s

系统 2019-09-27 17:54:47 1711

Python

python pytest进阶之conftest.py详解

前言前面几篇文章基本上已经了解了pytest命令使用,收集用例,finxture使用及作用范围,今天简单介绍一下conftest.py文件的作用和实际项目中如是使用此文件!实例场景首先们思考这样一个问题:如果我们在编写测试用的时候,每一个测试文件里面的用例都需要先登录后才能完成后面的操作,那么们该如何实现呢?这就需要我们掌握conftest.py文件的使用了。实例代码创建如下一个目录ConftestFile|conftest.py|test_file_01

系统 2019-09-27 17:54:45 1711

Python

利用Python实现kNN算法的代码

邻近算法(k-NearestNeighbor)是机器学习中的一种分类(classification)算法,也是机器学习中最简单的算法之一了。虽然很简单,但在解决特定问题时却能发挥很好的效果。因此,学习kNN算法是机器学习入门的一个很好的途径。kNN算法的思想非常的朴素,它选取k个离测试点最近的样本点,输出在这k个样本点中数量最多的标签(label)。我们假设每一个样本有m个特征值(property),则一个样本的可以用一个m维向量表示:X=(x1,x2,.

系统 2019-09-27 17:54:43 1711

Python

Python 监测文件是否更新的方法

主要逻辑是判断文件的最后修改时间与创建时间是否在秒级别上一致,此代码适用于Python2.importtimeimportos#ReadfimenameFileName='D:/scapegoat/xx.csv'#printfilecreationtimeprinttime.strftime('%Y-%m-%d%H:%M:%S',time.localtime(os.stat(FileName).st_ctime))#printfilemodifiedtim

系统 2019-09-27 17:54:41 1711

Python

Python访问MySQL封装的常用类实例

本文实例讲述了Python访问MySQL封装的常用类。分享给大家供大家参考。具体如下:python访问mysql比较简单,下面整理的就是一个很简单的Python访问MySQL数据库类。自己平时也就用到两个mysql函数:查询和更新,下面是自己常用的函数的封装,大家拷贝过去直接可以使用。文件名:DBUtil.py复制代码代码如下:#-*-encoding:utf8-*-'''@author:crazyant.net@version:2013-10-22封装的

系统 2019-09-27 17:54:30 1711

Python

Python的log日志功能及设置方法

引入:Python中有个logging模块可以完成相关信息的记录,在debug时用它往往事半功倍一、日志级别(从低到高):DEBUG:详细的信息,通常只出现在诊断问题上INFO:确认一切按预期运行WARNING:一个迹象表明,一些意想不到的事情发生了,或表明一些问题在不久的将来(例如。磁盘空间低”)。这个软件还能按预期工作。ERROR:更严重的问题,软件没能执行一些功能CRITICAL:一个严重的错误,这表明程序本身可能无法继续运行注:这5个等级,也分别对

系统 2019-09-27 17:54:25 1711

Python

Python安装模块

解决多版本同时存在的pip安装模块如果同时存在Python2和Python3版本,则需要通过python-mpipinstall的方式给指定的Python安装模块。安装模块超时,更换安装源当安装模块超时时可以通过修改超时时间的方式来进行解决,也可以通过修改安装源的方式解决。修改超时时间pip--default-timeout=100installnumpy通过设置临时安装源的方式pipinstallnumpy-ihttps://pypi.doubanio.

系统 2019-09-27 17:54:25 1711