自定义函数语法结构:
def fun1([x],[y],....):
  语句1
  语句2

使用def语句来定义函数,在def后依次写出函数名、小括号、参数(可无)、冒号,然后缩进写函数体

1、无参函数:
def test():
  print '这是不带参数的函数'

test()

2、带参数的函数
def test1(x,y):    #x,y为形参(提供给使用者的接入)
  print x * y

test1(2,3)      #调用时称为实参

3、带参数有返回值的函数
def test2(a,b):
  print a
  print b
  c = a + b
  return c

sum = test2(3,5)    #若函数有返回值,调用是需要有变量来存储返回值
print sum

4、带参数返回多个值 -- 返回一个元组(多个变量同时接收到一个元组)
def test3(a,b):
  print a
  print b
  c = a + b
  d = a * b
  e = a / b
  return c,d,e

result = test3(6,3)
print result

实例:游戏移动后坐标点返回
def move(x,y,step,angle=0):
  nx = x + step * math.cos(angle)
  ny = y - step * math.sin(angle)
  return nx,ny

zb = move(100,100,60,math.pi/6)
print zb

5、函数的预定义值(默认参数)
def test4(x,y,z,h=4):
  print x
  print y
  print z
  h = x + y + z + h
  return h

sum = test4(1,2,3)
print sum

def test5(h=4,x,y,z) -报错,有预定义值参数时,该参数只能放到最后

实例:求x的n次方:
def power(x,n):
  s = 1
  while n > 0:
    n = n - 1
    s = s * x
  return s

print power(3,4)

有多个预定义值的时候,既可以按顺序重新设定预定义值,也可以不按顺序设定
唯一区别就是:不按顺序设定时需要把参数名给加上,如:
def student(name,gender,age=8,city='shenzhen'):
  print 'name is:',name
  print 'gender is:',gender
  print 'age is:',age
  print 'city is:',city

student('James','M',7)
student('Polo','M',city='Guangzhou')

Python基础11- 函数之自定义函数的更多相关文章

  1. PHP基础函数、自定义函数以及数组

    2.10 星期五  我们已经真正开始学习PHP 了,今天的主要内容是php基础函数.自定义函数以及数组, 内容有点碎,但是对于初学者来说比较重要,下面是对今天所讲内容的整理:  1 php的基本语法和 ...

  2. Python之函数(自定义函数,内置函数,装饰器,迭代器,生成器)

    Python之函数(自定义函数,内置函数,装饰器,迭代器,生成器) 1.初始函数 2.函数嵌套及作用域 3.装饰器 4.迭代器和生成器 6.内置函数 7.递归函数 8.匿名函数

  3. python教程(三)·自定义函数

    前面介绍了如何使用函数,这一节我们就来学习怎么创建自己的函数! 自定义函数 创建函数非常简单,它使用关键字 "def",下面的代码创建了一个带有一个参数的函数,并使用不同的参数调用 ...

  4. python基础一 day15 内置函数

    '\r' 回车,回到当前行的行首,而不会换到下一行,如果接着输出的话,本行以前的内容会被逐一覆盖: '\n' 换行,换到当前位置的下一行,而不会回到行首: # print()# input()# le ...

  5. 十一. Python基础(11)—补充: 作用域 & 装饰器

    十一. Python基础(11)-补充: 作用域 & 装饰器 1 ● Python的作用域补遗 在C/C++等语言中, if语句等控制结构(control structure)会产生新的作用域 ...

  6. 『Python基础-11』集合 (set)

    # 『Python基础-11』集合 (set) 目录: 集合的基本知识 集合的创建 访问集合里的值 向集合set增加元素 移除集合中的元素 集合set的运算 1. 集合的基本知识 集合(set)是一个 ...

  7. PHP函数之自定义函数

    像数学中的函数一样,y=f(x)是函数基本的表达形式,x可看做是参数,y可看做是返回值,即函数定义就是一个被命名的.独立的代码段,它执行特定的任务,并可能给调用它的程序返回一个值. 自定义函数 函数的 ...

  8. MySQL之运算符与函数、自定义函数

    一自定义函数简介 (1)自定义函数定义 用户自定义函数(user-defined function,UDF)是一种对MySQL数据库扩展的途径,其用法与内置函数相同. (2)自定义函数的两个必要条件 ...

  9. PHP学习之[第05讲]PHP5.4 循环结构、系统函数和自定义函数

    一.while/for/break/continue: while (expr){ statements } for (expr1:expr2:expr3){ statement } break n  ...

  10. python基础11 ---函数模块1

    函数模块 一.函数模块的作用(为什么要有函数模块) 1.函数模块可以减少代码量 2.函数模块方便阅读 3.函数模块维护性强二.函数模块的本质以及调用方法 1.函数模块的本质就是一个.py结尾的文件,该 ...

随机推荐

  1. sqlplus 设置

    set heading offset line 40001.设置页面显示总行数show pagesize; //首先查看目前的pagesize,默认是14set pagesize 100; //将pa ...

  2. noip2016复习

    明天的复习任务 矩阵乘法 优先队列(老忘记怎么打) 二分图 K短路 单调队列(还是不太明白各种顺序) 扩展欧几里得 费马小定理求素数 哎呀,列了这么多,任重而道远啊-- 今夕是何夕,晚风过花庭-- 故 ...

  3. ios中通过调试来使用私有api

    转自:http://blog.csdn.net/cubepeng/article/details/11284173 OS不允许使用ios私有api,使用私有api可以获得意想不到的效果 ,同时使用私有 ...

  4. http://poj.org/problem?id=3278(bfs)

    Catch That Cow Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 76935   Accepted: 24323 ...

  5. hdu 5108 Alexandra and Prime Numbers

    数论题,本质是求出n的最大质因子 #include<time.h> #include <cstdio> #include <iostream> #include&l ...

  6. XAML语言介绍

    <Window x:Class="WpfApplication1.Window1" xmlns="http://schemas.microsoft.com/winf ...

  7. 【JAVA集合框架之List与Set】

    一.概述 JAVA的集合框架中定义了一系列的类,这些类都是存储数据的容器.与数组.StringBuffer(StringBuilder)相比,它的特点是: 1.用于存储对象. 2.集合长度可变. 3. ...

  8. Creating a Table View Programmatically

    https://developer.apple.com/library/ios/documentation/UserExperience/Conceptual/TableView_iPhone/Cre ...

  9. [Liferay6.2]Connect to ajax.googleapis.com …… timed out

    启动liferay 6.2 tomcat之后,后台会报一大段的异常信息,主要异常信息如下: -- :: org.apache.shindig.gadgets.http.BasicHttpFetcher ...

  10. bzoj1691[Usaco2007 Dec]挑剔的美食家 平衡树treap

    Description 与很多奶牛一样,Farmer John那群养尊处优的奶牛们对食物越来越挑剔,随便拿堆草就能打发她们午饭的日子自然是一去不返了.现在,Farmer John不得不去牧草专供商那里 ...