在linux下写几个测试程序,还要一行行的输入g++命令进行编译,当经常改测试代码的时候,那一次次的敲(或者一次次的上线箭头选)也感觉不爽,不如make来的快。用Makefile的好处就不用多说了,这里我写了个脚本,其功能是自动搜索当前目录(不包括子目录)下的“.c”文件生成Makefile文件。代码在这里,功能有限(适用于单个文件是一个独立的测试代码的情况),需要的朋友可以稍作修改以满足需求。复制代码代码如下:#!/usr/bin/python'''Fi
系统 2019-09-27 17:51:44 2300
python的布尔值True和False相当于1和0,True==1,False==0,True+1=2是成立。在if()条件判断语句中,0、空字符串("")、None、空列表([])、空元组(())、空集合({})这六种都等价于False,详见示例1,但是用==(比较值是否相等,不比较引用地址)比较时只有0==False为True,其他五种都是False,示例2。示例1#示例1if0:print("0")elif"":print("\"\"")elifN
系统 2019-09-27 17:50:47 2300
异常1.定义:运行时检测到的错误。2.现象:当异常发生时,程序不会再向下执行,而转到函数的调用语句。3.常见异常类型:–名称异常(NameError):变量未定义。–类型异常(TypeError):不同类型数据进行运算。–索引异常(IndexError):超出索引范围。–属性异常(AttributeError):对象没有对应名称的属性。–键异常(KeyError):没有对应名称的键。–为实现异常(NotImplementedError):尚未实现的方法。–
系统 2019-09-27 17:50:45 2300
1.安装python-crontabpipinstallpython-crontab2.设置定时任务fromcrontabimportCronTabmy_cron=CronTab(user='xxx')job1=my_cron.new(command='pythonxxx1.py')job1.minute.every(6)#定周期任务,每6分钟运行一次job2=my_cron.new(command='pythonxxx2.py')job2.hour.ev
系统 2019-09-27 17:50:23 2300
logging分为4个模块:loggers,handlers,filters,andformatters.●loggers:提供应用程序调用的接口●handlers:把日志发送到指定的位置●filters:过滤日志信息●formatters:格式化输出日志LoggerLogger.setLevel()设置日志级别Logger.addHandler()和Logger.removeHandler()增加和删除日志处理器Logger.addFilter()和Lo
系统 2019-09-27 17:49:58 2300
為何Python變量沒有DataType概念?可以與任意DataType綁定?Python變量Variable與其他程式語言不同之處在於:>variable不是對內存地址ramaddress的引用,而是對data的引用>variable被重新assign新値時,Python新分配此data存儲空間,而variable指向此新的地址例如:啟動Python時,其namespace如下:>>>globals(){'__name__':'__main__','__
系统 2019-09-27 17:49:50 2300
while循环Python中while语句的一般形式while判断条件:语句while有限循环n=100sum=0counter=1whilecounter<=n:sum=sum+countercounter+=1print("1到%d之和为:%d"%(n,sum))while无限循环我们可以通过设置条件表达式永远不为false来实现无限循环,实例如下:var=1whilevar==1:#表达式永远为truenum=int(input("输入一个数字:")
系统 2019-09-27 17:49:30 2300
声明:本文所使用方法为老猿自行研究并编码,相关代码版权为老猿所有,禁止转载文章,代码禁止用于商业用途!在《第11.23节Python中re模块的搜索替换功能:sub及subn函数》介绍了re.sub函数,其中的替换内容可以是一个函数,利用该功能我们可以展示正则表达式匹配过程中匹配到的目标子串的匹配顺序、匹配文本的内容和匹配文本在搜索文本中的位置。具体实现如下:importrematchcount=0defparsematch(patstr,text):gl
系统 2019-09-27 17:48:49 2300
LDAP(LightDirectoryAccessPortocol)是轻量目录访问协议,基于X.500标准,支持TCP/IP。LDAP目录以树状的层次结构来存储数据。每个目录记录都有标识名(DistinguishedName,简称DN),用来读取单个记录,一般是这样的:cn=username,ou=people,dc=test,dc=com几个关键字的含义如下:basedn:LDAP目录树的最顶部,也就是树的根,是上面的dc=test,dc=com部分,一
系统 2019-09-27 17:47:14 2300
一、死锁简单来说,死锁是一个资源被多次调用,而多次调用方都未能释放该资源就会造成死锁,这里结合例子说明下两种常见的死锁情况。1、迭代死锁该情况是一个线程“迭代”请求同一个资源,直接就会造成死锁:importthreadingimporttimeclassMyThread(threading.Thread):defrun(self):globalnumtime.sleep(1)ifmutex.acquire(1):num=num+1msg=self.name
系统 2019-09-27 17:46:39 2300