`
dbp_cn
  • 浏览: 85080 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

python 函数

 
阅读更多

函数:

函数是重用的程序段,它们允许你给一块语句一个名称,然后你可以在你的程序的任何地方 使用这个名字任意多次的运行这个语句块。这被称为 调用函数。

函数用def关键字 定义,def关键子后面跟一个函数的标识符,然后跟一对圆括号。圆括号中可以包括一些变量名,该行以冒号(:)结尾。

 

#!/usr/bin/python
#FileName: fun1.py

def sayHello():
    print 'Hello World!'

sayHello() #call the function

 

 

函数形参

函数取得的参数是你提供给函数的值,这样函数就可以利用这些值 做 一些事情。这些参数就像变量一样,只不过它们的值是在我们调用函数的时候定义的,而非在函数本身内赋值。

 

参数在函数定义的圆括号对内指定,用逗号分割。当我们调用函数的时候,我们以同样的方式提供值。注意我们使用过的术语——函数中的参数名称为 形参 而你提供给函数调用的值称为 实参 。

 

#!/usr/bin/python
#filename:func_param.py
def printMax(a,b):
    if a > b:
        print a,'is maximum'
    else:
        print b,'is maximum'

printMax(3,4)#result is 4.

 全局变量:

 

如果你想要为一个定义在函数外面的变量赋值,那么就得告诉 Python这个变量名不是局部的 ,而是全局的。我们使用 global语句完成这个功能,没有global语句,是不可能为定义在函数外的变量赋值的。

你可以使用定义在函数外的变量的值(假设在函数内没有同名的变量)。然而,我并不鼓励你这样做,并且你应该尽量避免这样做,因为这使得程序的读者会不清楚这个变量是在哪里定义的。使用global语句可以清楚地表明变量是在外面的块定义的。

 

#!/usr/bin/python
#filename: func_global.py

def func():
    global x
   
    print 'x is ', x
    x=2
    print 'Changed to local x to ', x

x =50
func()
print 'Value of x is ', x    #x is 2

 

 

默认参数值:

对于一些函数,你可能希望它的一些参数是 可选 的,如果用户不想要为这些参数提供值的话,这些参数就使用默认值。这个 功能借助于默认参数值完成。你可以在函数定义的形参名后面加上赋值运算符(=)和默认值,从而给形参制定默认的值。

只有在形参表末尾的那些参数可以有默认参数值,即你不能在声明函数形参的时候,先声明有默认值的形参而后声明没有默认值的形参。

这是因为赋给形参的值是根据位置而赋值的。例如,def func(a, b=5)是有效的,但是def func(a=5, b)是 无效 的。

#!/usr/bin/python
#filename: fun_default.py
def say(message,times=1):
    print message* times

say('Hello')   #result: Hello
say('Wolrd',5) #result : WorldWorldWorldWorldWorld

 

 关键参数:

 如果你的某个函数有许多参数,而你只想制定其中的一部分,那么你可以通过 命名来为这些参数赋值----这被称为 关键参数,我们使用名字(关键字)而不是位置来给函数制定实参。

这样做有两个优势--第一,我们不用担心参数的顺序,使用函数变得更加简单了。第二,假设其他参数都有默认值,我们可以只给我们想要的那些参数赋值。

 

#!/usr/bin/python
#filename: func_key.py

def func(a,b=5,c=10):
     print 'a is', a, 'and b is ', b, ' and c is ', c

func(3,7)  #a is 3 and b is  7  and c is  10
func(25,c=24) #a is 25 and b is  5  and c is  24
func(c=50,a=100)#a is 100 and b is  5  and c is  50
 

 可变参数:

可变参数就是传入的参数个数是可变的,可以是1个、2个到任意个,还可以是0个.要定义可变参数,必须在 参数前加上*.

def calc(*numbers):
    sum = 0
    for n in numbers:
        sum = sum + n
    return sum
  
print(calc())# 0
print(calc(1,10,100,1000.11))#1111.11

 

DocStrings

Python有一个很奇妙的特性,称为 文档字符串 ,它通常被简称为 docstrings 。DocStrings是一个重要的工具,由于它帮助你的程序文档更加简单易懂,你应该尽量使用它。你甚至可以在程序运行的时候,从函数恢复文档字符串!

 

#!/usr/bin/python
# Filename: func_doc.py

def printMax(x, y):
    '''Prints the maximum of two numbers.

    The two values must be integers.'''
    x = int(x) # convert to integers, if possible
    y = int(y)

    if x > y:
        print x, 'is maximum'
    else:
        print y, 'is maximum'

printMax(3, 5)
print printMax.__doc__
 输出:

 

$ python func_doc.py
5 is maximum
Prints the maximum of two numbers.

        The two values must be integers.

 文档字符串的惯例是一个多行字符串,它的首行以大写字母开始,句号结尾。第二行是空行,从第三行开始是详细的描述。 强烈建议 你在你的函数中使用文档字符串时遵循这个惯例。

 

你可以使用__doc__(注意双下划线)调用printMax函数的文档字符串属性(属于函数的名称)。

 

分享到:
评论

相关推荐

    Python-Python函数-教学设计.docx

    本教学设计针对Python函数这一核心概念,旨在帮助学生在已有的Python基础知识上,进一步提升编程技能。学生应已掌握了Python的基础语法和三种逻辑结构:顺序、条件分支和循环。然而,他们在逻辑思维和基础知识的扎实...

    python函数实验报告.doc

    通过一系列的任务,旨在帮助学习者掌握Python函数的核心概念和实际应用。 1. **函数的定义与使用**: - 在Python中,函数是通过`def`关键字定义的,例如`def isPrime(v)`。函数通常包含一个主体部分,用于执行特定...

    第六章Python函数习题及答案--中文

    本章节主要讲解了 Python 函数的基本概念和应用,包括函数的定义、函数的调用、函数的参数、函数的返回值等。通过实践习题和答案,读者可以更好地理解 Python 函数的使用和应用。 6.1 节定义函数:默认返回值 在 ...

    Python函数式编程(第2版)1

    《Python函数式编程(第2版)》是一本面向Python开发者深入探讨函数式编程的书籍。函数式编程是一种编程范式,它强调使用函数作为基本的构建块,以减少副作用和状态变化,从而提高代码的可读性和可维护性。Python虽...

    rhino python函数中文网址.txt

    接下来,我们将详细探讨Rhino中Python函数的相关知识点。 ### Rhino Python函数简介 #### Rhino 软件概述 Rhino是一款功能强大的3D建模软件,广泛应用于工业设计、产品设计、建筑以及工程等领域。它以其高度灵活的...

    收集的C调用Python函数资料

    当需要结合两者的优点时,就会涉及到C调用Python函数的话题。本文将深入探讨这个主题,旨在提供一个全面的理解和实践指南。 首先,我们要理解为什么要在C中调用Python函数。这种需求通常出现在以下几种情况:1) 想...

    VC调用Python函数,源代码

    本篇将详细讲解如何在VC++项目中实现对Python函数的调用,以及提供一个名为"pytest"的示例。 首先,调用Python函数在VC++中需要借助Python的API接口,这通常通过Python的动态链接库(.dll文件)来完成。确保你的...

    C++调用python函数

    本示例探讨了如何使用C++调用Python函数,特别是用于发送电子邮件的场景。这种技术允许我们利用C++的高效性能和Python丰富的库资源。 首先,C++与Python之间的交互通常依赖于Python的C API(Python C Application ...

    C++之python函数调用

    在C++程序中调用Python函数是跨语言交互的一个常见需求,这通常通过Python的C API(Python C Application Programming Interface)来实现。Python C API提供了一系列的C接口,允许C/C++代码直接与Python解释器交互,...

    Python函数速查表.zip

    Python函数速查表是编程者日常开发中的重要参考资料,它涵盖了Python语言中常用的函数和方法,便于快速查找和理解。这份资料特别强调了与numpy和SciPy库相关的知识,这两个库在科学计算和数据分析领域中扮演着核心...

    python函数文档_python函数_python文档_python_

    Python函数是Python编程语言的核心元素之一,用于组织代码并使其可重用。它们是执行特定任务的代码块,可以通过调用其名称来执行。在Python中,函数的定义使用关键字`def`,后跟函数名和圆括号,其中可能包含参数。...

    Atom-docblock-python,插入python函数文档块的atom插件.zip

    通常,一个Python函数的docstring会包含以下内容: 1. 函数的简短描述:一句话概述函数的作用。 2. 参数描述:每个参数的名称、类型和功能。 3. 返回值:函数执行后返回的数据类型和含义。 4. 示例:如果适用,可以...

    04-Python函数

    Python函数思维导图,便捷整理思路,函数介绍、函数的定义与调用、函数参数、函数返回值、、局部变量和全局变量、递归函数、匿名函数

    Notepad++ 支持python函数浏览插件 Notepad插件

    这个名为"Notepad++ 支持python函数浏览插件"的资源正是为了解决这个问题。它提供了一个增强功能,使得用户可以更方便地查看和折叠Python代码中的函数和类,提高了代码阅读和管理的效率。这在处理大型Python项目时...

    python 函数手册

    Python 函数手册是编程者的重要参考资料,它包含了Python语言中内置的函数以及它们的使用方法。下面我们将深入探讨几个关键的内置函数。 1. `abs(x)`:这个函数返回一个数值的绝对值。无论是整数、长整数还是浮点数...

    c++调用Python函数(并返回数据).zip

    本示例探讨的是如何使用C++调用Python函数,并从Python返回数据到C++。这个过程通常涉及到Python的C API或者第三方库如`boost::python`。 首先,我们需要理解C++调用Python函数的基本流程: 1. **初始化Python解释...

    python 函数的动态参数python 函数的动态参数python 函数的动态参数python 函数的动态参数.txt

    python 函数的动态参数python 函数的动态参数python 函数的动态参数python 函数的动态参数python 函数的动态参数python 函数的动态参数python 函数的动态参数python 函数的动态参数python 函数的动态参数

    python函数声明和调用定义及原理详解

    Python中的函数声明和调用具有其独特的语法和原理,本文将详细介绍Python函数的声明与调用规则、参数传递方式以及其背后的执行原理。 首先,要定义一个函数,我们使用关键字def后跟函数名和括号,其中括号内可以...

    Python函数

    Python函数

Global site tag (gtag.js) - Google Analytics