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

Python开发必备的30个编程技巧

直接交换2个数字的位置Python提供了一种直观的方式在一行代码中赋值和交换(变量值)。如下所示:x,y=10,20print(x,y)x,y=y,xprint(x,y)#1(10,20)#2(20,10)在上面代码中,赋值的右侧形成了一个新元组,而左侧则立刻将该(未被引用的)元组解包到名称和。待赋值完成后,新元组就变成了未被引用状态,并且被标为可被垃圾回收,最终也就发生了数字交换。链接比较操作符比较运算符的聚合是另一种有时用起来很顺手的技巧。n=10re

系统 2019-09-27 17:46:28 1765

Python

源码时代软件测试干货分享|Python自动化测试常见面试题,学会不怕找不到

怎么理解装饰器,用过或者写过什么装饰器吗?1.1.概述:装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。1.2.详细描述:1.importlogging8.ret=oldfunc(*args,**kwargs)9.returnret10.11.返回新函数12.returnnew_func13.14.15.#通过语法糖使用装饰器16.@decoratorbr/>2.#定义装饰器,

系统 2019-09-27 17:46:27 1765

Python

python生成日历实例解析

本文实例展示了Python生成日历的实现方法。该实例可实现一个月的日历生成5x7的列表,列表里的没个日期为datetime类型,采用python自带的calendar模块实现。程序运行结果如下:pythontest.py2014092014-08-312014-09-012014-09-022014-09-032014-09-042014-09-052014-09-062014-09-072014-09-082014-09-092014-09-102014

系统 2019-09-27 17:46:25 1765

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:20 1765

Python

Python读取键盘输入的2种方法

Python提供了两个内置函数从标准输入读入一行文本,默认的标准输入是键盘。如下:1.raw_input2.inputraw_input函数raw_input()函数从标准输入读取一个行,并返回一个字符串(去掉结尾的换行符):复制代码代码如下:str=raw_input("Enteryourinput:");print"Receivedinputis:",str这将提示你输入任意字符串,然后在屏幕上显示相同的字符串。当我输入"HelloPython!",它

系统 2019-09-27 17:45:41 1765

Python

python一些有用的函数

1、Pythonstartswith()方法用于检查字符串是否是以指定子字符串开头,如果是则返回True,否则返回False。如果参数beg和end指定值,则在指定范围内检查。https://www.runoob.com/python/att-string-startswith.html2、Pythonisalnum()方法检测字符串是否由字母和数字组成。https://www.runoob.com/python/att-string-isalnum.ht

系统 2019-09-27 17:45:35 1765

Python

Python定时任务随机时间执行

背景:有一个爬虫服务,需要定时从公开网站上拉取一些数据,为了避免被识别为爬虫(防爬虫的识别需要根据很多特征,时间仅仅是其中一个维度),需要在指定的时间内,随机生成一个时间爬取脚本是python写的,直接上代码...importloggingimporttracebackfromdatetimeimportdatetimefromapscheduler.schedulers.backgroundimportBackgroundSchedulerschedul

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

Python

python学习 流程控制语句详解

######################分支语句python3.5#################代码的缩进格式很重要建议4个空格来控制#根据逻辑值(True,Flase)判断程序的运行方向#Ture:表示非空的量(String,tuple元组、list、set、dictonary),所有非零的数字#False:0,None、空的量#逻辑表达式可以包含逻辑运算符andornotif:##################################

系统 2019-09-27 17:38:35 1765

Python

深入理解python try异常处理机制

深入理解pythontry异常处理机制#python的try语句有两种风格#一:种是处理异常(try/except/else)#二:种是无论是否发生异常都将执行最后的代码(try/finally)try/except/else风格try:<语句>#运行别的代码except<名字>:<语句>#如果在try部份引发了'name'异常except<名字>,<数据>:<语句>#如果引发了'name'异常,获得附加的数据else:<语句>#如果没有异常发生#try的

系统 2019-09-27 17:38:34 1765

Python

python套接字流重定向实例汇总

将套接字流重定向到标准输入或输出流#!/usr/bin/envpython3"""测试socket-stream重定向模式"""importsys,os,timefrommultiprocessingimportProcessfromsocketimport*definitListenerSocket(port=50008,host=''):"""初始化在服务器模式下调用者用于监听连接的套接字"""sock=socket()try:sock.bind((h

系统 2019-09-27 17:38:28 1765

Python

Python监控主机是否存活并以邮件报警

利用Python写了简单测试主机是否存活脚本,此脚本不适于线上使用,因为网络延迟、丢包现象会造成误报邮件,那么后续会更新判断三次ping不通后再发报警邮件,并启用多线程处理。#!/usr/bin/envpython#coding:UTF-8importtimeimportpexpectimportsmtplibfromemail.mime.textimportMIMETextmail_host="smtp.163.com"#定义smtp服务器mail_to

系统 2019-09-27 17:38:23 1765

Python

深入解析Python编程中JSON模块的使用

JSON编码支持的基本数据类型为None,bool,int,float和str,以及包含这些类型数据的lists,tuples和dictionaries。对于dictionaries,keys需要是字符串类型(字典中任何非字符串类型的key在编码时会先转换为字符串)。为了遵循JSON规范,你应该只编码Python的lists和dictionaries。而且,在web应用程序中,顶层对象被编码为一个字典是一个标准做法。JSON编码的格式对于Python语法而

系统 2019-09-27 17:38:14 1765

编程技术

Domino为新注册的用户发送欢迎邮件

问题描述:在使用LotusNotes时,当注册完一个新用户之后,是否能自动发送一封欢迎邮件给此用户?如果您修改邮箱模板并将这封欢迎邮件放到其中,那么这封邮件只会在手动创建邮箱库的时候予以保留。解答:这个问题作为产品的新功能请求已经提交到相关的人员,SPR号为HHAA5HJB9G,目前来讲并没有计划去实现该功能。但是可以采用其他的办法去间接地实现。可以通过用户首次打开数据库的“关于数据库”文档来实现,也可以在邮箱模板的数据库资源包含的数据库Script中的P

系统 2019-08-29 23:47:06 1765

编程技术

手机游戏中的闪烁

昨日等车无聊时,打开手机,玩起了自己做的一款手机游戏。突然想起以前写代码的趣事。记得当时写代码写到天昏地暗,突然遇到瓶径,如何解决闪烁问题。也许是长时间写代码的原因,大脑有点缺氧,百思居然不得其解。于是上网查找,居然无解...仔细一想,网上既然无解。那只有两种可能:要么就是太简单,不是问题;要么就是太复杂无人能解。显然不是后者...悲剧,难道我一向自负的天资出卖了我就在这时。停电了...我恍然大悟,原来我把简单的事情弄复杂了,闪烁其实没有那么复杂。setv

系统 2019-08-29 23:46:45 1765

编程技术

创建型设计模式--工厂方法

工厂方法(FactoryMethod)定义一个用于创建对象的接口,让子类决定实例哪一个类。工厂方法使一个类的实例化延迟到其子类。在工厂方法模式中,核心的工厂类不再负责所有产品的创建,而是将具体创建的工作交给子类去做。这个核心工厂则变为抽象工厂角色,仅负责给出工厂子类必须实现的接口,而不接触哪一产品创建的细节。工厂方法模式可以用来允许系统不修改具体工厂角色的情况下引进新产品在工厂方法模式中,一般都有一个平行的等级结构,抽象工厂对应抽象产品,具体工厂对应具体产

系统 2019-08-29 23:25:22 1765