网站建设资讯

NEWS

网站建设资讯

python耗时函数的简单介绍

python每隔N秒运行指定函数的方法

python每隔N秒运行指定函数的方法

站在用户的角度思考问题,与客户深入沟通,找到和平网站设计与和平网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:成都网站制作、做网站、企业官网、英文网站、手机端网站、网站推广、空间域名、虚拟主机、企业邮箱。业务覆盖和平地区。

这篇文章主要介绍了python每隔N秒运行指定函数的方法,涉及Python的线程与时间操作技巧,非常具有实用价值,需要的朋友可以参考下

这是一个类似定时器的效果,每隔指定的秒数运行指定的函数,采用线程实现,代码简单实用。

代码如下:import os

import time

def print_ts(message):

print "[%s] %s"%(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()), message)

def run(interval, command):

print_ts("-"*100)

print_ts("Command %s"%command)

print_ts("Starting every %s seconds."%interval)

print_ts("-"*100)

while True:

try:

# sleep for the remaining seconds of interval

time_remaining = interval-time.time()%interval

print_ts("Sleeping until %s (%s seconds)..."%((time.ctime(time.time()+time_remaining)), time_remaining))

time.sleep(time_remaining)

print_ts("Starting command.")

# execute the command

status = os.system(command)

print_ts("-"*100)

print_ts("Command status = %s."%status)

except Exception, e:

print e

if __name__=="__main__":

interval = 5

command = r"ipconfig"

run(interval, command)

希望本文所述对大家的Python程序设计有所帮助。

找出python程序中运行时最耗时间的部分

那就是profile和cProfile模块:

import cProfile

cProfile.run('function....')

另外,time模块,在不同的函数的开头和结尾分别计时,然后将两个时间相减,就可以获得这段函数的运行时间了,然后在看哪段函数占的时间比较大:

import time

t1=time.time()

##you function segment here

t2=time.time()

timediff=t2-t1

python 时间函数 入门问题

其实就是利用timedelta()来计算了,参数也可以是'days=..'等,help(datetime.timedelta)就清楚了。

python中from time import sleep是什么意思

from time import sleep就是从time模块中引入sleep函数,使用sleep函数可以让程序休眠(推迟调用线程的运行)。

具体方法:

1,sleep(时间)。

2,#如果之前引入了time模块,使用time.sleep(时间)语句即可,不需要import这个语句。

3,#具体用法见下其中“时间”以秒为单位,可以是小数,0.1秒则代表休眠100毫秒。

扩展资料:

使用Python编程时的注意事项:

1,初始变化量:

在Python里,一个表达式中的名字在它被赋值之前是没法使用的。这是有意而为的:这样能避免一些输入失误,同时也能避免默认究竟应该是什么类型的问题(0,None,””,[],?)。记住把计数器初始化为0,列表初始化为[],以此类推。

2,从第一列开始:

确保把顶层的,未嵌套的代码放在最左边第一列开始。这包括在模块文件中未嵌套的代码,以及在交互提示符中未嵌套的代码。Python使用缩进的办法来区分嵌套的代码段,因此在代码左边的空格意味着嵌套的代码块。除了缩进以外,空格通常是被忽略掉的。

3,缩进一致:

在同一个代码块中避免讲tab和空格混用来缩进,除非知道运行自己的代码的系统是怎么处理tab的。否则的话,在自己的编辑器里看起来是tab的缩进也许Python看起来就会被视作是一些空格。保险起见,在每个代码块中全都是用tab或者全都是用空格来缩进;用多少由自己决定。

4,在函数调用时使用括号:

无论一个函数是否需要参数,必须要加一对括号来调用它。即,使用function(),而不是function。Python的函数简单来说是具有特殊功能的对象,而调用是用括号来触发的。像所有的对象一样,它们也可以被赋值给变量,并且间接的使用它们:x=function:x()。

python 打印出函数执行所用时间

使用timeit模块,先介绍下:

timeit 模块

timeit 模块定义了接受两个参数的 Timer 类。两个参数都是字符串。 第一个参数是你要计时的语句或者函数。 传递给 Timer 的第二个参数是为第一个参数语句构建环境的导入语句。 从内部讲, timeit 构建起一个独立的虚拟环境, 手工地执行建立语句,然后手工地编译和执行被计时语句。

一旦有了 Timer 对象,最简单的事就是调用 timeit(),它接受一个参数为每个测试中调用被计时语句的次数,默认为一百万次;返回所耗费的秒数。

Timer 对象的另一个主要方法是 repeat(), 它接受两个可选参数。 第一个参数是重复整个测试的次数,第二个参数是每个测试中调用被计时语句的次数。 两个参数都是可选的,它们的默认值分别是 3 和 1000000。 repeat() 方法返回以秒记录的每个测试循环的耗时列表。Python 有一个方便的 min 函数可以把输入的列表返回成最小值,如: min(t.repeat(3, 1000000))

你可以在命令行使用 timeit 模块来测试一个已存在的 Python 程序,而不需要修改代码。

再给你个例子,你就知道怎么做了。

# -*- coding: utf-8 -*-

#!/bin/env python

def test1():

n=0

for i in range(101):

n+=i

return n

def test2():

return sum(range(101))

def test3():

return sum(x for x in range(101))

if __name__=='__main__':

from timeit import Timer

t1=Timer("test1()","from __main__ import test1")

t2=Timer("test2()","from __main__ import test2")

t3=Timer("test3()","from __main__ import test3")

print t1.timeit(1000000)

print t2.timeit(1000000)

print t3.timeit(1000000)

print t1.repeat(3,1000000)

print t2.repeat(3,1000000)

print t3.repeat(3,1000000)


网页标题:python耗时函数的简单介绍
文章网址:http://cdweb.net/article/hdjice.html