不完美的Python自从各类Python大火,感觉天上地下哪儿都有Python的一席之地,Python功夫好啊…但python有些细节上缺少其他语言的便利。今天我们就来举几个例子。跳出外层循环大家都知道,在Java中存在标签的概念,当我们存在多层循环时,Java可以使用标签控制指定的循环层。举个小栗子:publicclassOuterLoop{publicstaticvoidmain(String[]args){outer:for(inti=0;i<5;i
系统 2019-09-27 17:54:10 2300
python多线程深入理解低级接口基本使用EventSemaphore线程通信高级接口低级接口基本使用join()方法用来阻塞主线程。可以注释掉、看看打印顺序。importthreadingimporttimedeftest(n):time.sleep(1)print(n)t=threading.Thread(target=test,args=(7,))t.start()t.join()#等待子线程执行完毕,才继续执行主线程。print('主线程执行完毕'
系统 2019-09-27 17:53:20 2300
在linux下写几个测试程序,还要一行行的输入g++命令进行编译,当经常改测试代码的时候,那一次次的敲(或者一次次的上线箭头选)也感觉不爽,不如make来的快。用Makefile的好处就不用多说了,这里我写了个脚本,其功能是自动搜索当前目录(不包括子目录)下的“.c”文件生成Makefile文件。代码在这里,功能有限(适用于单个文件是一个独立的测试代码的情况),需要的朋友可以稍作修改以满足需求。复制代码代码如下:#!/usr/bin/python'''Fi
系统 2019-09-27 17:51:44 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
[文件]DakeleSign.py~4KB#!/usr/bin/envpython#-*-coding:utf-8-*-__author__='poppy''''dakelebbssigin'''importsysimporturllib2importurllibimportrequestsimportcookielibimportjsonfrompyqueryimportPyQueryaspqimportlogginglogging.basicConfi
系统 2019-09-27 17:50:06 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
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
LogisticRegressionClassifier逻辑回归主要思想就是用最大似然概率方法构建出方程,为最大化方程,利用牛顿梯度上升求解方程参数。优点:计算代价不高,易于理解和实现。缺点:容易欠拟合,分类精度可能不高。使用数据类型:数值型和标称型数据。介绍逻辑回归之前,我们先看一问题,有个黑箱,里面有白球和黑球,如何判断它们的比例。我们从里面抓3个球,2个黑球,1个白球。这时候,有人就直接得出了黑球67%,白球占比33%。这个时候,其实这个人使用了最大
系统 2019-09-27 17:49:29 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
高性能服务器TornadoPython的web框架名目繁多,各有千秋。正如光荣属于希腊,伟大属于罗马。Python的优雅结合WSGI的设计,让web框架接口实现千秋一统。WSGI把应用(Application)和服务器(Server)结合起来。Django和Flask都可以结合gunicon搭建部署应用。与django和flask不一样,tornado既可以是wsgi应用,也可以是wsgi服务。当然,选择tornado更多的考量源于其单进程单线程异步IO的
系统 2019-09-27 17:38:14 2300