Python学习笔记-函数的使用

文档更新说明

  • 2017年03月09日 v1.0 初稿

不管你是做什么开发的,函数在开发中的使用可以说是非常频繁的,本文将使用一个例子来说明python中函数的使用方式

例:定时休息提醒器

项目背景:作为程序员,经常一坐就是一整天忘记起身,忘记休息。为了解决这个问题,我们可以使用python来做一个定时器,定时提醒我们去休息一下,去走走,去转转,提升我们是身体素质

步骤分析

在程序开发中,我们要善于把大项目切割成小项目,然后在把小羡慕各个击破。根据我们的需求,可以把这个项目分成一下几个步骤

  1. 程序启动之后,开启延时;
  2. 延时时间到了之后,打开浏览器的一个提醒页面
  3. 循环执行上面的步骤

根据上面的步骤,我们先实现打开浏览器吧。

第一步:打开浏览器

在进行第一步之前,先来解释说明两个概念,什么是模块,什么是标准库。

模块

Python中,一个模块(Module),就是一个.py后缀的文件,在模块(文件)中,可以包含Python对象定义和Python语句(definitions and statements)
我们可以把一些类和函数单独放在一个.py文件中,封装成一个模块。对于大工程来说,使用模块可以让我们的项目变得更加易于维护

标准库

Python标准库,英文名字The Python Standard Library。是Python的一个内建模块,也就是说,当我们安装好Python之后,它就存在我们的电脑里面了。Python的标准库底层是基于C语言实现的,但是给我们的接口(API)就是Python的了,所以我们可以通过使用Python标准库,很方便地调用到系统底层的东西。

码代码

python标准库(standard library)中,有一个模块叫做webbrowser,打开文档,我们可以看到一个open的方法。

webbrowser.open(url, new=0, autoraise=True)

通过文档,我们可以看到open方法一共可以接收三个参数:url、new、autoraise,其中,new、autoraise两个参数后面是跟了=的,在Pyton中,函数参数名如果跟了=,就代表这个参数是有默认值的,在调用的时候,如果没有给带默认值的参数赋值,那么,函数就会使用上面的默认值。

那也就是说,我们只要给open函数传入一个url参数就可以运行了

代码如下:

#!/usr/bin/python

import webbrowser

webbrowser.open("http://fengqiangboy.com/test/relax.html")

使用Python解析器允许一下,我们可以发现,浏览器已经打开了我们指定的页面,我们顺利完成了第一步。

第二步:延时执行函数

前面我们已经了解了模块和标准库,这里我们延时功能依旧使用标准库里面的一个模块,只不过这次我们使用的是time模块。相信你已经在此刻,打开了Python的标准库文档,并且找到了time模块的文档

稍微把文档往下拖拽一下,我们可以发现time.sleep(secs)函数,看看描述:挂起当前线程,并在指定的时间之后,继续往下执行。似乎可以满足我们的需求。

码代码

既然已经找到了可能可以实现的方法,那就来试试呗,反正又不要钱。测试代码如下:

#!/usr/bin/python

import time

time.sleep(3)
print "Hello"

运行上面的代码,我们可以发现,程序在执行3秒钟之后,打印了一个Hello出来。

第三步:重复执行

重复执行一个任务,我们可以使用循环来做,而对于没有次数限制的死循环,我们首选while()结构。

码代码

这次的实验,我们直接在第二部的代码中加入一个循环功能,来测试一下循环是否正常运行。

#!/usr/bin/python

import time

while (1) :
    time.sleep(3)
    print "Hello"

运行可以发现,我们的程序在不停的打印Hello

第四步:整合上面的功能

通过前面三步,我们已经可以轻轻松松地实现:

1. 打开浏览器
2. 延迟指定的时间,执行我们的任务
3. 循环地执行我们的任务

那么也就是说,我们接下来只要把上面的重复执行任务换成打开浏览器去提醒程序员休息就行了。
那OK,开干!

#!/usr/bin/python

import webbrowser
import time

count = 3

while count>0:
    time.sleep(10)
    webbrowser.open("http://fengqiangboy.com/test/relax.html")
    count -= 1

在上面的代码中,我们修改了循环条件,限定了循环次数。

总结

通过上面的几步,我们完成了我们的目标,也使用了Python的内建模块来完成一些操作。其实生活也是如此,我们把目标分解成小块的时候,会发现,做起来并没有那么难。




本文已在版权印备案,如需转载请访问版权印。