下面就先定义一个函数:
复制代码代码如下:
def foo():
print('function')
foo()
在上述代码中,定义了一个名为foo的函数,这个函数没有参数,
Python中的Function定义方法第1/2页
。最后一行代码的功能是调用这个函数。这是一个函数的最简单形式。下面来介绍一下有参数的函数:复制代码代码如下:
def foo():
print('function')
def foo1(a,b):
print(a+b)
foo()
foo1(1,2)
foo1就是一个有参数的函数,使用foo1(1,2)就可以调用这个有参的函数了。
在程序中,有变量存在,就会涉及到变量的作用域的问题。在Python中,变量的作用域分三个等级:global、local和nonlocal。
global:顾名思义,表示全局变量。即这个变量在python中处于最高层次上,也就是这个变量的定义层次最高,而不是在函数或类中。
local:局部变量,被定义在函数之中。
nonlocal:这是一个相对的概念。在python中,函数内部可以嵌套定义内部函数,这样函数内部的变量相对于函数内部的内嵌函数来讲就是nonlocal的。
下面,给出相关的程序来说明,首先看一下全局和局部变量:
复制代码代码如下:
x = 1
y = 2
def foo(x):
print(x)
print(y)
print('***********')
x = 3
global y
y = 3
print(x)
print(y)
print('***********')
foo(x)
print(x)
print(y)
#************************
#运行结果
1
2
***********
3
3
***********
1
3
在上述程序中,定义了两个全局变量x和y, 在函数foo内部,也定义了一个局部变量x。根据运行结果可知,在foo内部,变量x是真正的局部变量。因为对其所做的修改并没有对全局变量x产生影响。另外,如果在foo内部需要使用全局变量,则需要使用global关键字。global y的意图就是声明变量y为外部声明过的全局变量y。所以,在foo内部对y进行修改后,在foo外部仍然有影响。因为foo修改的是全局变量。
再来看一下nonlocal:
复制代码代码如下:
def out():
z = 3
def inner():
nonlocal z
z = 4
print('inner function and z = {0}'.format(z))
inner()
print('out function and z = {0}'.format(z))
out()
#**********
#运行结果
inner function and z = 4
out function and z = 4
当前1/2页12下一页
您可能感兴趣的文章:
Python重新引入被覆盖的自带function
QQ空间 搜狐微博 人人网 开心网 百度搜藏更多
Tags:Python Function
复制链接收藏本文打印本文关闭本文返回首页
上一篇:Cython 三分钟入门教程
下一篇:Python重新引入被覆盖的自带function
相关文章
2014-01-01python发送arp欺骗攻击代码分析
2013-02-02使用python实现baidu hi自动登录的代码
2014-02-02python基础教程之基本内置数据类型介绍
2014-01-01python实现批量转换文件编码(批转换编码示例)
2014-04-04Python爬虫框架Scrapy安装使用步骤
2014-06-06Python ORM框架SQLAlchemy学习笔记之关系映射实例
2014-01-01linux系统使用python监测系统负载脚本分享
2013-11-11python列表与元组详解实例
2013-03-03利用python获得时间的实例说明
2012-10-10python笔记(2)
文章评论
最 近 更 新
Python的lambda匿名函数的简单介绍
python多线程编程方式分析示例详解
从零学Python之hello world
python创建和使用字典实例详解
Python开发实例分享bt种子爬虫程序和种子
学习python处理python编码问题
Eclipse + Python 的安装与配置流程
python list中append()与extend()用法分享
python实现文件名批量替换和内容替换
python的三目运算符和not in运算符使用示
热 点 排 行
Python入门教程 超详细1小时学会
python 中文乱码问题深入分析
比较详细Python正则表达式操作指
Python字符串的encode与decode研
Python open读写文件实现脚本
Python enumerate遍历数组示例应
Python 深入理解yield
Python+Django在windows下的开发
python 字符串split的用法分享
python 文件和路径操作函数小结