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自定义函数的创建、调用和函数的参数详解
Mar 11 Python
Python中set与frozenset方法和区别详解
May 23 Python
Python对列表去重的多种方法(四种方法)
Dec 05 Python
django用户登录和注销的实现方法
Jul 16 Python
解决Python pandas plot输出图形中显示中文乱码问题
Dec 12 Python
解决pyinstaller打包发布后的exe文件打开控制台闪退的问题
Jun 21 Python
python实现机器人卡牌
Oct 06 Python
解决django model修改添加字段报错的问题
Nov 18 Python
Docker部署Python爬虫项目的方法步骤
Jan 19 Python
python实现将列表中各个值快速赋值给多个变量
Apr 02 Python
python中return如何写
Jun 18 Python
python 实现定时任务的四种方式
Apr 01 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 注册时输入信息验证器的实现详解
2013/07/05 PHP
PHP快速推送微信模板消息
2017/04/14 PHP
利用PHP获取访客IP、地区位置、浏览器及来源页面等信息
2017/06/27 PHP
PHP-FPM的配置与优化讲解
2019/03/15 PHP
分享几种好用的PHP自定义加密函数(可逆/不可逆)
2020/09/15 PHP
表单提交验证类
2006/07/14 Javascript
关于IE7 IE8弹出窗口顶上
2008/12/22 Javascript
jQuery 白痴级入门教程
2009/11/11 Javascript
JavaScrip实现PHP print_r的数功能(三种方法)
2013/11/12 Javascript
javascript中定义类的方法详解
2015/02/10 Javascript
AngularJS控制器controller正确的通信的方法
2016/01/25 Javascript
用JS实现图片轮播效果代码(一)
2016/06/26 Javascript
js实现5秒倒计时重新发送短信功能
2017/02/05 Javascript
Javascript中的神器——Promise
2017/02/08 Javascript
三分钟学会用ES7中的Async/Await进行异步编程
2018/06/14 Javascript
JS中的防抖与节流及作用详解
2019/04/01 Javascript
JS实现马赛克图片效果完整示例
2019/04/13 Javascript
vant IndexBar实现的城市列表的示例代码
2019/11/20 Javascript
[40:55]Liquid vs LGD 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python变量和数据类型详解
2017/02/15 Python
详解Python pygame安装过程笔记
2017/06/05 Python
python实现n个数中选出m个数的方法
2018/11/13 Python
python修改txt文件中的某一项方法
2018/12/29 Python
Python API 自动化实战详解(纯代码)
2019/06/11 Python
django 实现将本地图片存入数据库,并能显示在web上的示例
2019/08/07 Python
Pytorch GPU显存充足却显示out of memory的解决方式
2020/01/13 Python
python继承threading.Thread实现有返回值的子类实例
2020/05/02 Python
美国轮胎网站:Priority Tire
2018/11/28 全球购物
单位人事专员介绍信
2014/01/11 职场文书
高中生班主任评语
2014/04/25 职场文书
签约仪式策划方案
2014/06/02 职场文书
2014年环保局工作总结
2014/12/11 职场文书
担保贷款承诺书
2015/04/30 职场文书
单位工资证明范本
2015/06/12 职场文书
Python绘制地图神器folium的新人入门指南
2021/05/23 Python
Python编程中内置的NotImplemented类型的用法
2022/03/23 Python