中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > 综合其它
学习Python(9)- Function
作者:未知 时间:2005-09-13 23:33 出处:Blog.ChinaUnix.net 责编:chinaitpower
              摘要:学习Python(9)- Function

Function的定义是很重要的语言要素,先来看一段代码:


>>> def fib(n):    # write Fibonacci series up to n
...     """Print a Fibonacci series up to n."""
...     a, b = 0, 1
...     while b < n:
...         print b,
...         a, b = b, a+b
... 
>>> # Now call the function we just defined:
... fib(2000)
1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597

      这个是一个计算Fibonacci数列的函数。我们看到定义function需要关键字“def”,需要一个函数名,和括号中的参数列表。函数体用缩进来界定。 在函数体的第一行可以是一个字符串常量,称为docstring。这个注视行有点类似javadoc,可以被很多工具处理来生成API文档。

      因为所有的赋值都是对local symbol table做操作。因此对全局变量引用是可以的,对全局变量赋值是不可以的(除非用global语句特别指明)。

      Python是传值调用的,作为参数传进来的对象的地址是不能改变的。但是对象的数据成员是可变的。这个和Java很相似。

      函数的返回值的类型不必特别声明。可以直接在函数内部的任何位置使用return。如果return语句不加参数或是没有return语句,返回值是“None”。

      最后,和C++一样,函数是可以互相赋值的:


>>> fib
<function object at 10042ed0>
>>> f = fib
>>> f(100)
1 1 2 3 5 8 13 21 34 55 89

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有