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

Python专用方法与迭代机制实例分析

本文实例讲述了Python专用方法与迭代机制,分享给大家供大家参考之用。具体分析如下:众所周知,Python设计哲学是“优雅”、“明确”、“简单”,对于一件事只用一种最好的方法来做,而这种优雅在于背后很自然的隐藏了很多细节。比如对一些对象直接用for语句来迭代,一些全局函数可以作用于很多具有共同特征的对象,还有生成器装饰器自省等特性。其中很多实现都是借助Python内部专用方法,而对外则使用统一的全局函数来进行操作,在配合一些语法糖,使得Python写起来

系统 2019-09-27 17:56:52 1807

Python

Python中unittest用法实例

本文实例讲述了Python中unittest的用法,分享给大家供大家参考。具体用法分析如下:1.unittestmodule包含了编写运行unittest的功能,自定义的testclass都要集成unitest.TestCase类,testmethod要以test开头,运行顺序根据testmethod的名字排序,特殊方法:①setup():每个测试函数运行前运行②teardown():每个测试函数运行完后执行③setUpClass():必须使用@class

系统 2019-09-27 17:56:34 1807

Python

python 动态添加属性和方法

python动态语言在运行时可以改变类的结构,添加属性,添加方法删除函数添加属性:就是在类的结构以外添加属性也可以修改1.添加对象属性(1)p1.age="123"#使用对象名创建(2)setattr(p1,"home","阳光小区")#使用内置方法设置和取得属性值getattr(p1,"home")#取得新增属性的值2.添加类属性(1)Preson.ID=111112#使用类名创建添加方法:3.添加对象方法importtypesdefstudy(self

系统 2019-09-27 17:55:39 1807

Python

shiboken绑定C++供python使用

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

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

Python

python3 模拟登录v2ex实例讲解

闲的无聊。。。网上一堆,正好练手(主要是新手)#coding=utf-8importrequestsfrombs4importBeautifulSoupheaders={'user-agent':'Mozilla/5.0(WindowsNT6.1;Win64;x64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/56.0.2924.87Safari/537.36','origin':'https://www.v2ex.

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

Python

python3 实现的对象与json相互转换操作示例

本文实例讲述了python3实现的对象与json相互转换操作。分享给大家供大家参考,具体如下:1.python主要有三种数据类型:字典、列表、元组,其分别由花括号,中括号,小括号表示。例如:字典:dictData={'a':12,'b':34}列表:listData=[1,2,3,4]元组:tupleData=(1,2,3,4)2.使用json时,导入importjson即可3.python对象转json字符串,主要用到的函数:json.dumps()。例

系统 2019-09-27 17:54:24 1807

Python

高效测试用例组织算法pairwise之Python实现方法

开篇:测试过程中,对于多参数参数多值的情况进行测试用例组织,之前一直使用【正交分析法】进行用例组织,说白了就是把每个参数的所有值分别和其他参数的值做一个全量组合,用Python脚本实现,就是itertools模块中product方法(又称笛卡尔积法)。正交分析法的优点是测试用例覆盖率100%,缺点测试用例数量庞大,执行用例消耗的人工巨大。Pairwise(结对)算法源于对传统的正交分析方法优化后得到的产物,它的理论来自于数学统计。毫不避讳的说,本人看不懂数

系统 2019-09-27 17:54:21 1807

Python

python启动应用程序和终止应用程序的方法

1.目的每天上班,工作需要,电脑上需要每天开机启动一些软件,下班时候,需要关掉一些软件。一个一个打开和关闭貌似是很繁琐的,于是乎,这个脚本产生了。2.环境系统环境:-win7-32位-python2.7.9你还需要安装pywin32。pipinstallpywin323.编写脚本启动应用程序脚本#coding=utf-8importwin32api#日报软件启动win32api.ShellExecute(0,'open',r'C:\ProgramFiles

系统 2019-09-27 17:53:58 1807

Python

python爬虫开发第一步——熟悉网络编程,python线程与进程

最近博主手上有一个爬虫项目,开始深入研究python爬虫开发,这是我篇博客也相当于是我的学习笔记,我认为学习爬虫第一步,先学习python多线程与多进程,熟悉网络编程,接下来会陆续以博客的方式跟大家做分享。多进程Python实现多进程的方式主要有两种,一种方法是使用os模块中的fork方法,另一种方法是使用multiprocessing模块。这两种方法的区别在于前者仅适用于Unix/Linux操作系统,对Windows不支持,后者则是跨平台的实现方式,目前

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

Python

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

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

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

Python

Python算法引入

[TOC]这里主要是算法的介绍以及一些判断算法好坏的标准和方式引入如果a+b+c=1000,且a^2+b^2=c^2,如何求出所有a,b,c可能的组合?第一次尝试:importtimeprint("开始")start_time=time.time()forainrange(1001):forbinrange(1001):forcinrange(1001):ifa+b+c==1000anda**2+b**2==c**2:print("a,b,c:%d,%d,

系统 2019-09-27 17:53:21 1807

Python

Python 命令行之旅:使用 argparse 实现 git 命令

作者:HelloGitHub-ProdesireHelloGitHub的《讲解开源项目》系列,项目地址:https://github.com/HelloGitHub-Team/Article前言在前面三篇介绍argparse的文章中,我们全面了解了argparse的能力,相信不少小伙伴们都已经摩拳擦掌,想要打造一个属于自己的命令行工具。本文将以我们日常工作中最常见的git命令为例,讲解如何使用argparse库来实现一个真正可用的命令行程序。本系列文章默认

系统 2019-09-27 17:52:35 1807

Python

python学习笔记 第五章2

经典的汉诺塔问题:这里我们可以利用递归的思想去做,递归中重要的三步,我们逐条来实现:1、函数+分支结构2、递归链条3、递归基例函数+分支结构:defhanoi(n,start,end,mid):globalcountif:else:这里我们可以定义一个函数,里面的参数有:一共有n个圆盘,从start柱子移到end柱子,中间柱子为mid。这里定义一个全局变量来计算移动的步骤数,若为局部变量,会在函数内部不断初始化,所以需要定义全局变量。递归基例:ifn==1

系统 2019-09-27 17:52:07 1807

Python

Python 实现elasticsearch group by

es实现聚合es通过agg实现聚合,详情可见es文档有时候查询es数据的时候可能需要实现多字段groupby的功能,例如:SELECTsum(item_count)fromAgroupbyfield1,field2,field3要实现多个维度的聚合,需要嵌套的agg查询语句:{"query":{},"aggs":{"field1":{"terms":{"field":"field1","size":2147483647#设置一个大的分桶数,防止一次统计不完

系统 2019-09-27 17:51:32 1807

Python

python如何删除文件中重复的字段

本文实例为大家分享了python如何删除文件中重复字段的具体代码,供大家参考,具体内容如下原文件内容放在list中,新文件内容按行查找,如果没有出现在list中则写入第三个文件中。importcsvfiletxt1='E:/gg/log/log1.txt'filecsv1='E:/gg/log/log1.csv'filecsv2='E:/gg/log/log2.csv'filecsv3='E:/gg/log/log3.csv'classoperFileCs

系统 2019-09-27 17:50:51 1807