Python def函数的定义、使用及参数传递实现代码


Posted in Python onAugust 10, 2014

Python编程中对于某些需要重复调用的程序,可以使用函数进行定义,基本形式为:

def 函数名(参数1, 参数2, ……, 参数N):

执行语句函数名为调用的表示名,参数则是传入的参数,可以更具需要定义,也可以没有。

# 例1:简单的函数使用
# coding=gb2312

# 定义函数
def hello():
  print 'hello python!'
  
# 调用函数    
hello()
  
>>> hello python!

函数可以带参数和返回值,参数将按从左到右的匹配,参数可设置默认值,当使用函数时没给相应的参数时,会按照默认值进行赋值。

# 例2:累加计算值
# coding=gb2312

# 定义函数
def myadd(a=1,b=100):
  result = 0
  i = a
  while i <= b:  # 默认值为1+2+3+……+100
    result += i  
    i += 1
  return result

# 打印1+2+……+10    
print myadd(1,10)
print myadd()    # 使用默认参数1,100
print myadd(50)   # a赋值50,b使用默认值
  
>>> 55
>>> 5050
>>> 3825

Python 函数的参数传递时,值得注意的是参数传入时若为变量会被当作临时赋值给参数变量,如果是对象则会被引用。

# 例3:
# coding=gb2312

def testpara(p1,p2):
  p1 = 10
  p2.append('hello')

l = []   # 定义一数组对像
a = 20   # 给变量a赋值
testpara(a,l) # 变量a与对象数组l作为参数传入
print a   # 打印运行参数后的值
for v in l: # 打印数组对象的成员
  print v
    
>>> 20    # 调用函数后a变量并未被复值
>>> hello  # 而对象l数组则增加成员hello
Python 相关文章推荐
python多线程编程方式分析示例详解
Dec 06 Python
python实现应用程序在右键菜单中添加打开方式功能
Jan 09 Python
Anaconda多环境多版本python配置操作方法
Sep 12 Python
浅析python3中的os.path.dirname(__file__)的使用
Aug 30 Python
Python拼接字符串的7种方法总结
Nov 01 Python
python实现微信自动回复机器人功能
Jul 11 Python
python语言线程标准库threading.local解读总结
Nov 10 Python
Python文件时间操作步骤代码详解
Apr 13 Python
Python实现查找数据库最接近的数据
Jun 08 Python
Django之腾讯云短信的实现
Jun 12 Python
Python绘制组合图的示例
Sep 18 Python
python线程优先级队列知识点总结
Feb 28 Python
Python-基础-入门 简介
Aug 09 #Python
Python入门及进阶笔记 Python 内置函数小结
Aug 09 #Python
Python正则表达式的使用范例详解
Aug 08 #Python
python脚本实现统计日志文件中的ip访问次数代码分享
Aug 06 #Python
Python写的Socks5协议代理服务器
Aug 06 #Python
Python写的PHPMyAdmin暴力破解工具代码
Aug 06 #Python
Python写的Discuz7.2版faq.php注入漏洞工具
Aug 06 #Python
You might like
php的正则处理函数总结分析
2008/06/20 PHP
php 全局变量范围分析
2009/08/07 PHP
关于PHP递归算法和应用方法介绍
2013/04/15 PHP
PHP中的魔术方法总结和使用实例
2015/05/11 PHP
laravel框架如何设置公共头和公共尾
2019/10/22 PHP
通用于ie和firefox的函数 GetCurrentStyle (obj, prop)
2006/12/27 Javascript
用JS剩余字数计算的代码
2008/07/03 Javascript
js检查页面上有无重复id的实现代码
2013/07/17 Javascript
用JavaScript实现动画效果的方法
2013/07/20 Javascript
JavaScript 对象字面量讲解
2016/06/06 Javascript
JavaScript定时器实现的原理分析
2016/12/06 Javascript
Bootstrap 3浏览器兼容性问题及解决方案
2017/04/11 Javascript
jquery中ajax请求后台数据成功后既不执行success也不执行error的完美解决方法
2017/12/24 jQuery
Nodejs连接mysql并实现增、删、改、查操作的方法详解
2018/01/04 NodeJs
jQuery实现经典的网页3D轮播图封装功能【附源码下载】
2019/02/15 jQuery
微信小程序实现搜索功能并跳转搜索结果页面
2019/05/18 Javascript
vue实现数据控制视图的原理解析
2020/01/07 Javascript
js实现拖拽与碰撞检测
2020/09/18 Javascript
[05:07]DOTA2英雄梦之声_第14期_暗影恶魔
2014/06/20 DOTA
在Python中关于中文编码问题的处理建议
2015/04/08 Python
使用IPython下的Net-SNMP来管理类UNIX系统的教程
2015/04/15 Python
Python 读取图片文件为矩阵和保存矩阵为图片的方法
2018/04/27 Python
Python搭建代理IP池实现获取IP的方法
2019/10/27 Python
Keras使用ImageNet上预训练的模型方式
2020/05/23 Python
python实现图片转字符画的完整代码
2021/02/21 Python
李维斯德国官方网上商店:Levi’s德国
2016/09/10 全球购物
Luxplus丹麦:香水和个人护理折扣
2018/04/23 全球购物
英国排名第一的宠物店:PetPlanet
2020/02/02 全球购物
搞笑婚礼主持词
2014/03/13 职场文书
廉洁使者实施方案
2014/03/29 职场文书
养牛场项目建议书
2014/05/13 职场文书
公证委托书
2014/08/01 职场文书
公司外出活动方案
2014/08/14 职场文书
月度优秀员工获奖感言
2014/08/16 职场文书
2015年药店工作总结
2015/04/20 职场文书
python开发实时可视化仪表盘的示例
2021/05/07 Python