python定時執行指定函數的方法

來源:互聯網
上載者:User

python定時執行指定函數的方法

   本文執行個體講述了python定時執行指定函數的方法。分享給大家供大家參考。具體實現方法如下:

  ?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

# time a function using time.time() and the a @ function decorator

# tested with Python24 vegaseat 21aug2005

import time

def print_timing(func):

def wrapper(*arg):

t1 = time.time()

res = func(*arg)

t2 = time.time()

print '%s took %0.3f ms' % (func.func_name, (t2-t1)*1000.0)

return res

return wrapper

# declare the @ decorator just before the function, invokes print_timing()

@print_timing

def getPrimeList(n):

""" returns a list of prime numbers from 2 to < n using a sieve algorithm"""

if n < 2: return []

if n == 2: return [2]

# do only odd numbers starting at 3

s = range(3, n+1, 2)

# n**0.5 may be slightly faster than math.sqrt(n)

mroot = n ** 0.5

half = len(s)

i = 0

m = 3

while m <= mroot:

if s[i]:

j = (m*m-3)//2

s[j] = 0

while j < half:

s[j] = 0

j += m

i = i+1

m = 2*i+3

return [2]+[x for x in s if x]

if __name__ == "__main__":

print "prime numbers from 2 to <10,000,000 using a sieve algorithm"

primeList = getPrimeList(10000000)

time.sleep(2.5)

"""

my output -->

prime numbers from 2 to <10,000,000 using a sieve algorithm

getPrimeList took 4750.000 ms

"""

  希望本文所述對大家的Python程式設計有所協助。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.