首页 - 教程专区 - PyS60教程 - 米饭教程

----------------
定义函数
--------------------

应のBlog

其实我也不明白这为什么叫函数,看教程上都这么说,但是不知道这跟数学那个函数有没有什么联系。就这么叫吧。
先跟大家介绍一下这个函数是什么,我们来看上一讲的代码。
def add() :这里add就算是一个函数,我们在这里定义(def)add之后就可以在选项或其他位置使用这个函数。

缩进:
空白在PYTHON中是重要的,事实上行首的空白是重要的,它被称为缩进.早逻辑行首的空白(空格或者电脑上的tab制表符)用来决定逻辑行的缩进层次,从而用来决定语句的分组.

这意味着同一层次的语句必须有相同的缩进,每一组这样的语句称为一个.

你唯一需要记住的就是:错误的缩进会引发错误.如果你把代码写成下面这样就会出错:
def add():
    m.add(u'a')#注:前面是4个空格
   m.set(u'b')#前面是三个空格
像这样的代码肯定是错的.因为两个处于相同层次的代码没有相同的缩进.
一般情况下,缩进有三种:2个空格或者4个空格或者1个制表符.尽量选择一种缩进方式,在以后的编程种一直使用这种方式.本教程都按4个空格来讲解.

定义右软键动作:
上一节中我们做的那个软件,只要按右键就会马上退出.现在我们想在退出之前提示一下是否退出改怎么做?还是打开上节的那个代码,然后在里面加上点东西让它变成下面这样:
#****代码开始****
import appuifw
def cn(x):return x.decode("utf-8")
def add():m.add(cn("这是添加文字功能"))
def clear():m.set("")#括号里面是一对双引号
def exit():
    if appuifw.query(cn("确定退出吗?"),"query"):#此行前面有4个空格
        appuifw.app.set_exit()#此行前面有8个空格

appuifw.app.body = m = appuifw.Text()
m.set(u"zntx.org.cn")
m.add(cn("\n米饭教程"))
appuifw.app.menu = [(cn("添加文字"),add),(cn("清除屏幕"),clear)]
appuifw.app.exit_key_handler=exit

#****代码结束****

点击下载代码

讲解:
现在我们看代码里多了 appuifw.app.exit_key_handler=exit 这样一个东西,我们知道上面的menu是定义左软键功能的,这里的exit_key_handler就是定义右软键的功能的.我们在代码里定义了右键动作为exit函数,这样,我们就要定义一下这个exit:所以看下面:if appuifw.query(cn("确定退出吗?"),"query"):这个是弹出一个询问框,如果点击确定则运行appuifw.app.set_exit()这个退出代码.否则就返回.定义这个函数的时候,一定要注意缩进. if那一行是第一层次,下面那行就是第二层次了.

留个思考问题:如果我想把右键动作定义为添加文字功能,应该怎么做呢? (如果你这样做成功之后发现软件无法退出只能长按功能键然后按C强退的话,那么就要在选项中加入退出的功能了) 祝你成功.

下一编
上一编

首页 - 教程专区 - PyS60教程 - 米饭教程