【1】#函数的作用:1.减少重复代码 2.方便修改,更容易扩展3.保持代码的一致性

【2】#函数简单的定义规则:

函数代码块以def关键词开头,后接函数标识符名称和圆括号(),任何传入参数和自变量必须放在圆括号中间
函数内容以冒号起始,并且缩进
若有返回值,Return[expression] 结束函数;不带return 表达式相当于返回None

函数通常使用三个单引号  '''...'''   来注释说明函数;函数体内容不可为空,可用 pass 来表示空语句;以下几个为简单的函数示例:

 1 ''' some basic functions '''
2 def func1(): # 函数无传入参数
3 print("func1") # 无return值
4 func1() # 函数调用
5
6 def func2():
7 return("func2") # return 字符串 "func2"
8 print(func2())
9
10 def func3(a,b): # 需传两个参数
11 print("a+b = %d" %(a+b)) # print表达式,无return
12 func3(3,4)
13
14 def func4(a,b): # 需传两个参数
15 return (a+b) # return a+b 的值
16 print(func4(4,3))

【3】函数的参数:

1.必备参数(必备参数须以正确的顺序传入函数。调用时的数量必须和声明时的一样)

2.关键字参数(关键字参数和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值。使用关键字参数允许函数调用时参数的顺序与声明时不一致,因为 Python 解释器能够用参数名匹配参数值)

#可写函数说明
def printme( str ):
"打印任何传入的字符串"
print str;
return; #调用printme函数
printme( str = "My string");

3.默认参数(调用函数时,缺省参数的值如果没有传入,则被认为是默认值)

#可写函数说明
def printinfo( name, age = 35 ):
"打印任何传入的字符串"
print "Name: ", name;
print "Age ", age;
return; #调用printinfo函数
printinfo( age=50, name="miki" );
printinfo( name="miki" );

4.不定长参数(一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,列如:*arg,**kwarg)

def printinfo( arg1, *arg):
"打印任何传入的参数"
print "输出: "
print arg1
for var in arg:
print var
return;
# 调用printinfo 函数
printinfo( 10 );
printinfo( 70, 60, 50 ); 输出:
10
输出:
70
60
50

def fun3(**arg):#参数转让如同字典,也可以用遍历的方法打印出来
    print ("arg type=" + str(type(arg)))
    print ("arg=" + str(arg))

print ("age:" + str(arg['age']))
    print ("name:" + str(arg['name']))

fun3(age=2,name=3)
fun3(name=2, age=3)

#输出结果

arg type=<class 'dict'>
arg={'name': 3, 'age': 2}
age:2
name:3
arg type=<class 'dict'>
arg={'name': 2, 'age': 3}
age:3
name:2
arg type=<class 'dict'>

python函数的创建和函数参数的更多相关文章

  1. 【python】lambda创建匿名函数

  2. Python系列之lambda、函数、序列化

    lambda 在python中使用lambda来创建匿名函数,而用def创建的方法是有名称的,除了从表面上的方法名不一样外,python lambda还有哪些和def不一样呢? 1 python la ...

  3. 流畅的python第五章一等函数学习记录

    在python中,函数是一等对象,一等对象是满足以下条件的程序实体 1在运行时创建 2能复制给变量或数据结构的元素 3能作为参数传给函数 4能作为函数的返回结果 高阶函数(接受函数作为参数或者把函数作 ...

  4. 像计算机科学家一样思考python-第3章 函数

    在程序设计中,函数是指用于进行某种计算的一系列语句的有名称的组合.定义一个函数时,需要指定函数的名称并写下一系列程序语句.之后,就可以使用名称来“调用”这个函数 3.1函数调用 一个函数调用的例子 & ...

  5. C++ primer(八)--内联函数 引用变量 引用传递函数参数 函数重载/模板/模板具体化

    一.内联函数     常规函数和内联函数的区别在于C++编译器如何将他们组合到程序中.编译过程的最终产品是可执行程序--由一组机器语言指令组成.运行程序时,操作系统将这些指令载入到计算机内存中,因此每 ...

  6. PHP函数的创建

    看代码 PHP函数的创建,包括参数,和其他的语言一样 <?php #PHP crate function function writeName($name) { echo 'Name is '. ...

  7. MYSQL进阶学习笔记五:MySQL函数的创建!(视频序号:进阶_13)

    知识点六:MySQL函数的创建(13) 内置函数: 自定义函数: 首先查看是否已经开启了创建函数的功能: SHOW VARIABLES LIKE ‘%fun%’; 如果变量的值是OFF,那么需要开启 ...

  8. JavaScript的函数申明、函数表达式、箭头函数

    JavaScript中的函数可以通过几种方式创建,如下. // 函数声明 function getName() { return 'Michael' } // 函数表达式 const getName ...

  9. Python:学会创建并调用函数

    这是关于Python的第4篇文章,主要介绍下如何创建并调用函数. print():是打印放入对象的函数 len():是返回对象长度的函数 input():是让用户输入对象的函数 ... 简单来说,函数 ...

随机推荐

  1. DefinePlugin插件

    这个插件允许你创建全局常量用于编译时解析.如果设置mode:"production",webpack默认会设置"process.env.NODE_ENV": J ...

  2. httpclient中文乱码

    https://blog.csdn.net/teamlet/article/details/8605840

  3. hadoop商业版本的选择介绍

    记得刚接触到hadoop的时候跟大部分人一样都会抱怨hadoop的安装部署问题,对于一个新手来说这这的是个头疼的问题,可能需要花费一整天的时间才能把分布式环境安装配置好.在刚接触hadoop的一段时间 ...

  4. Eclipse各个版本及其对应代号、下载地址列表

    版本号 代码 日期 下载地址 Eclipse 3.1 IO[木卫一,伊奥] 2005 http://archive.eclipse.org/eclipse/downloads/drops/R-3.1- ...

  5. mac 蓝牙开启调试模式

    mac 蓝牙开启调试模式 按住shift+option+鼠标右键点右上角的蓝牙图标

  6. Php文件上传类class.upload.php

    简介 Class.upload.php是用于管理上传文件的php文件上传类, 它可以帮助你快速的给自己的网站集成上传文件功能.不仅如此,此分类还有一些列的处理功能,可以对上传的文件或者本地的文件进行处 ...

  7. 数据科学VS机器学习

    数据科学是一个范围很广的学科.机器学习和统计学都是数据科学的一部分.机器学习中的学习一词表示算法依赖于一些数据(被用作训练集)来调整模型或算法的参数.这包含了许多的技术,比如回归.朴素贝叶斯或监督聚类 ...

  8. ubuntu-docker入门到放弃(三)images镜像管理

    docker虽然有公共的镜像管理hub,但是我们在日常的使用中,由于不同的业务场景,不同的架构,公共的镜像库不能满足需求,并且出于安全考虑,会搭建私有的docker hub镜像库来管理自己的image ...

  9. Intellij Idea编译项目下的.java文件时的编码问题

    Intellij Idea编译项目下的.java文件时的编码问题 原创 2015年07月22日 21:45:14 10510 由<编译.java文件时的编码问题>可知,在编译.java文件 ...

  10. SpringCloud之服务注册与发现Eureka(一)

    Eureka是Spring Cloud Netflix微服务套件中的一部分,可以与Springboot构建的微服务很容易的整合起来.Eureka包含了服务器端和客户端组件.服务器端,也被称作是服务注册 ...