time函数

函数节流

前提是你 提交于 2019-11-29 08:40:42
function throttle{fn,time){ clearInterval(fn.timeId); fn.timeId = setTimeout(function(){fn()},time); } 转载于:https://my.oschina.net/u/1792175/blog/598084 来源: https://blog.csdn.net/chuomu8273/article/details/100681957

python定时器

て烟熏妆下的殇ゞ 提交于 2019-11-29 08:33:34
#-*-coding:utf-8 -*- __author__ = 'Administrator' import os,threading,time curTime=time.strftime("%Y-%M-%D",time.localtime())#记录当前时间 execF=False ncount=0 def execTask(): #具体任务执行内容 print("execTask executed!") def timerTask(): global execF global curTime global ncount if execF is False: execTask()#判断任务是否执行过,没有执行就执行 execF=True else:#任务执行过,判断时间是否新的一天。如果是就执行任务 desTime=time.strftime("%Y-%M-%D",time.localtime()) if desTime > curTime: execF = False#任务执行执行置值为 curTime=desTime ncount = ncount+1 timer = threading.Timer(5,timerTask) timer.start() print("定时器执行%d次"%(ncount)) if __name__=="__main__": timer =

Python3.5学习之旅——day5

我是研究僧i 提交于 2019-11-29 08:28:46
模块初识 一、定义 在python中,模块是用来实现某一特定功能的代码集合。其本质上就是以‘.py’结尾的python文件。例如某文件名为test.py,则模块名为test。 二、导入方法 我们在这一节通过举例来向大家简单介绍模块的导入方法。 我们在这里创建一个自定义模块‘module_test’,如下(module_test.py): name='kobe' def say_hello(): print('hello kobe!') 另新建'import_test.py'并在其中导入模块module_test,方法如下: import module_test print(module_test.name) print(module_test.say_hello()) 代码执行结果如下: 通过上例,我们可以看出import_test.py通过导入模块module_test,取出了module_test中‘name’变量的值,并且运行了函数say_hello。 若想导入导入多个模块,则可‘import module1,module2...’ >>>import module1, module2,... 若想导入某个模块中某个功能或全部功能 >>>from module import * #导入module模块中的全部功能 >>>from module import (功能名)

装饰器

丶灬走出姿态 提交于 2019-11-29 06:11:48
很多人对装饰器难以理解,原因是因为以下三点内容没有搞清楚 1、关于函数变量的理解(或者是变量函数的理解) 2、关于高阶函数的理解 3、关于函数嵌套的理解 1、装饰器 定义和作用:装饰器实际上就是为了给某程序增添功能,但该程序已经上线或已经被使用,那么就不能大批量的修改源代码,这样是不科学的也是不现实的,因为就产生了装饰器,使得其满足: 1、不能修改被装饰的函数的源代码 2、不能修改被装饰函数的调用方式 3、在满足1、2的条件下、给程序添加新的功能 那么根据需求,同时满足了这三点原则,这才是我们的目的。因为,下面我们从解决这三点原则入手来理解装饰器。 等等,我要在需求之前先说装饰器的原则组成: < 函数+实参高阶函数+返回值高阶函数+嵌套函数+语法糖 = 装饰器 > 这个式子是贯穿装饰器的灵魂所在! 装饰器:本质就是函数,功能是为其他函数添加功能; #原则 #1:不能修改被修饰函数的源代码; #2:不能修改被修饰函数的调用方式 #装饰器的知识储备 #装饰器 = 高阶函数+函数嵌套+闭包 import time def demo(func): def data(): star_time = time.time() func() end_time = time.time() print("执行时间%s"%(end_time - star_time))return data @demo

PAT A1111 Online Map (30 分) 图 dijkstra

生来就可爱ヽ(ⅴ<●) 提交于 2019-11-29 05:43:40
题目大意:给出一张图,两个顶点之间的边权有两种,分别计算两种边权下从起点到终点的最短路径。 仍然是常规的dijktra+dfs问题,但是要写两次。也可以把两个dijkstra写在一个函数里,这时要注意二维数组的形参是 int G[ ][MAXN] 或者 int (*G)[MAXN]。 AC代码: #include <iostream> #include <vector> #include <algorithm> #include <cstdio> using namespace std; const int MAXN = 510; const int INF = 0x7FFFFFFF; int G1[MAXN][MAXN]; int G2[MAXN][MAXN]; int d[MAXN]; bool visited[MAXN] = {false}; vector<vector<int>> pre1; vector<vector<int>> pre2; void dijktra(int s, int N, int G[][MAXN], vector<vector<int>> &pre) { fill(d, d + MAXN, INF); fill(visited, visited + MAXN, 0); d[s] = 0; for (int i = 0; i < N; ++i) {

msql 数据类型

烈酒焚心 提交于 2019-11-29 02:12:49
1.数据类型 #1. 数字: 整型:tinyinit int bigint 小数: float :在位数比较短的情况下不精准 double :在位数比较长的情况下不精准 0.000001230123123123 存成:0.000001230000 decimal:(如果用小数,则用推荐使用decimal) 精准 内部原理是以字符串形式去存 #2. 字符串: char(10):简单粗暴,浪费空间,存取速度快 root存成root000000 varchar:精准,节省空间,存取速度慢 sql优化:创建表时,定长的类型往前放,变长的往后放 比如性别 比如地址或描述信息 >255个字符,超了就把文件路径存放到数据库中。 比如图片,视频等找一个文件服务器,数据库中只存路径或url。 #3. 时间类型: 最常用:datetime #4. 枚举类型与集合类型! 2.数据类型    1、整数类型     整数类型:TINYINT,SMALLINT,MEDIUMINT,INT,BIGINT     作用:存储年龄,等级,id,各种号码等 tinyint[(m)] [unsigned] [zerofill] 小整数,数据类型用于保存一些范围的整数数值范围: 有符号: -128 ~ 127 无符号: 0~ 255 PS: MySQL中无布尔值,使用tinyint(1)构造。 int[(m)]

装饰器

折月煮酒 提交于 2019-11-29 00:00:52
1. 开放封闭原则 什么是开放封闭原则?有的同学问开放,封闭这是两个反义词这还能组成一个原则么?这不前后矛盾么?其实不矛盾。开放封闭原则是分情况讨论的。 我们的软件一旦上线之后(比如你的软件主要是多个函数组成的),那么这个软件对功能的扩展应该是开放的,比如你的游戏一直在迭代更新,推出新的玩法,新功能。但是对于源代码的修改是封闭的。你就拿函数举例,如果你的游戏源代码中有一个函数是闪躲的功能,那么你这个函数肯定是被多个地方调用的,比如对方扔雷,对方开枪,对方用刀,你都会调用你的闪躲功能,那么如果你的闪躲功能源码改变了,或者调用方式改变了,当对方发起相应的动作,你在调用你的闪躲功能,就会发生问题。所以,开放封闭原则具体具体定义是这样: 1.对扩展是开放的 我们说,任何一个程序,不可能在设计之初就已经想好了所有的功能并且未来不做任何更新和修改。所以我们必须允许代码扩展、添加新功能。 2.对修改是封闭的 就像我们刚刚提到的,因为我们写的一个函数,很有可能已经交付给其他人使用了,如果这个时候我们对函数内部进行修改,或者修改了函数的调用方式,很有可能影响其他已经在使用该函数的用户。OK,理解了开封封闭原则之后,我们聊聊装饰器。 什么是装饰器?从字面意思来分析,先说装饰,什么是装饰? 装饰就是添加新的,比如你家刚买的房子,下一步就是按照自己的喜欢的方式设计,进行装修,装饰,地板,墙面,家电等等

计算机二级Python学习笔记(九)

*爱你&永不变心* 提交于 2019-11-28 23:31:43
上一篇: 二级Python学习笔记(八) 距离上一篇已经过去大半个月了,明天我都要考试了,才勉强把这最后一篇更完,想想惭愧。这期间也做了不少题,不知道会不会考原题,今天第一天考的童鞋在群里说挺难,再发篇博客攒攒人品吧......为日后考试的小伙伴们提供一点便利,记住多学多练,加油! 最后三章一起了,还以为我一章一篇博客呢,怎么可能这么轻易被猜透? **************************比 第一篇 华丽的分割线**************************** 第9章 Python标准库概览 9.1 turtle库概述 turtle库:Python重要的标准库之一,进行基本的图形绘制。 三种引入方式: import turtle turtle.circle(200) from turtle import * circle(200) import turtle as t t.circle(200) 9.2 turtle库与基本绘图 窗体函数: turtle.setup(width, height, startx, starty) 作用:设置主窗体的大小和位置 参数: width :窗口宽度,如果值是整数,表示的像素值;如果值是小数,表示窗口宽度与屏幕的比例; height: 窗口高度,如果值是整数,表示的像素值;如果值是小数,表示窗口高度与屏幕的比例; startx

python语言与数据类型详解

前提是你 提交于 2019-11-28 23:27:56
python数据类型详解 内容大纲 1、字符串 2、布尔类型 3、整数 4、浮点数 5、数字 6、列表 7、元组 8、字典 9、日期 1、字符串 1.1、如何在Python中使用字符串 a、使用单引号(’) 用单引号括起来表示字符串,例如: str=‘this is string’; print str; b、使用双引号(") 双引号中的字符串与单引号中的字符串用法完全相同,例如: str=“this is string”; print str; c、使用三引号(’’’) 利用三引号,表示多行的字符串,可以在三引号中自由的使用单引号和双引号,例如: str=’’‘this is string this is pythod string this is string’’’ print str; 2、布尔类型 bool=False; print bool; bool=True; print bool; 3、数字类型 3.1、基本使用 整数 int=20; print int; 浮点数 float=2.3; print float; 3.2、删除数字对象引用,例如: a=1; b=2; c=3; del a; del b, c; #print a; #删除a变量后,再调用a变量会报错 3.3、数字类型转换 int(x [,base]) 将x转换为一个整数 float(x )

go time包定时器和断续器

旧城冷巷雨未停 提交于 2019-11-28 21:46:45
定时器 在time包中有两个函数可以帮助我们初始化time.Timer time.Newtimer函数 初始化一个到期时间据此时的间隔为3小时30分的定时器 t := time . Newtimer ( 3 * time . Hour + 30 * time . Minute ) 注意,这里的变量t是*time.NewTimer类型的,这个指针类型的方法集合包含两个方法 Rest 用于重置定时器 该方法返回一个bool类型的值 Stop 用来停止定时器 该方法返回一个bool类型的值,如果返回false,说明该定时器在之前已经到期或者已经被停止了,反之返回true。 通过定时器的字段C,我们可以及时得知定时器到期的这个事件来临,C是一个chan time.Time类型的缓冲通道,一旦触及到期时间,定时器就会向自己的C字段发送一个time.Time类型的元素值 示例一:一个简单定时器 package main import ( "fmt" "time" ) func main ( ) { //初始化定时器 t := time . NewTimer ( 2 * time . Second ) //当前时间 now := time . Now ( ) fmt . Printf ( "Now time : %v.\n" , now ) expire := <- t . C fmt .