python入门15 函数
函数的主要作用是实现代码复用
1 python内置函数
2 匿名函数lambda
3 自定义函数 def functionname(arg):...
#coding:utf-8
#/usr/bin/python
"""
2018-11-11
dinghanhua
函数
""" '''内置函数'''
print(round(2.345,2)) #四舍五入,保留2位小数;绝对值
print(abs(-23.333)) #绝对值 '''匿名函数 lambda'''
lambda x: x**2 #匿名函数
print(list(map(lambda x:x**3,(1,2,3)))) #x的3次方
print(list(filter(lambda x:x%2==0 , [1,2,33,44]))) #取偶数
'''自定义函数''' '''函数定义'''
def funcname(arg,sign):
'''函数说明'''
print('arg=%s,sign=%s'%(arg,sign))
return '''带缺省值的函数'''
def funcname2(name,nation = 'china'): #第二个参数带缺省值,缺省参数放到最后
print('name is %s,nation is %s'%(name,nation))
return name,nation '''函数调用'''
#不带参数名,按顺序赋值
res = funcname('wegjoweg','no sign')
print('没有返回值,返回:',res)
#指定参数名,顺序可打乱
funcname(sign = 2,arg = 'ok') #缺省参数未传参
res = funcname2('小明')
print(res)
#缺省参数传参
res = funcname2('peter','Americia')
print('返回多个值,返回的是一个tuple:',res)
'''缺省参数=list 出现的异常'''
def func(val,list=[]):
list.append(val)
return list
list1 = func(10)
list2 = func('abc',[])
list3 = func('')
print(list1,list2,list3) #[10, '2'] ['abc'] [10, '2'] list1和list3同一个地址,均指向缺省参数的内存地址 #规避以上问题,list=None
def func(val,list=None):
if list is None:
list = [] #每次创建一个
list.append(val)
return list
list1 = func(10)
list2 = func('abc',[])
list3 = func('')
print(list1,list2,list3) #[10] ['abc'] ['2']
'''可变参数*arg,取出来是元组'''
def func(name,*other):
print('name=%s,other=%s'%(name,other)) func('john',18,'一年级')
func('peter',20) '''可变参数**arg,取出来是字典'''
def func(name,**other):
print('name=%s,other=%s'%(name,other)) func('john',age=18,grade='一年级')
other = {'age':18,'grade':'grade 1'}
func('peter',**other)
the end!
python入门15 函数的更多相关文章
- Python入门篇-函数、参数及参数解构
Python入门篇-函数.参数及参数解构 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.函数概述 1>.函数的作用即分类 函数 数学定义:y=f(x) ,y是x的函数,x ...
- Python入门之 函数
Python入门之 函数 1.初识函数 1.1 什么是函数? <1> 将某个功能封装到一个空间中就是一个函数 <2> 减少重复代码 1.2 定义函数 def -- python ...
- Python入门-初始函数
今天让我们来初步认识一个在python中非常重要的组成部分:函数 首先,让我们来幻想这样一个场景: 比如说我们现在想要通过社交软件约一个妹子,步骤都有什么? print('打开手机 ') print( ...
- python入门总结-函数
函数形式: def functionname(paramlist): function body 局部变量不改变实参的值,如果需要改变,声明global.比如,global x 可以给函数默认值,注意 ...
- python入门之函数
为什么要用函数 python的函数是由一个新的语句编写,即def ,def是可执行的语句--函数并不存在,知道python运行了def后才存在. 函数是通过赋值函数传递的,参数通过赋值传递给函数. d ...
- Python入门之函数的装饰器
本章目录: 装饰器: 一.为什么要用装饰器 二.什么是装饰器 三.无参装饰器 四.装饰器语法糖 五.认证装饰器实现 六.叠加多个装饰器 七.带参装饰器 ======================== ...
- Python入门之函数的嵌套/名称空间/作用域/函数对象/闭包函数
本篇目录: 一.函数嵌套 二.函数名称空间与作用域 三.函数对象 四.闭包函数 ============================================================ ...
- Python入门day04_函数与装饰器
一.函数入门 什么是函数: # 函数:函数是一系列代码的集,用来完成特定功能的代码块,类似于工具,可以重复不但的去使用 为什么要有函数: # 优点:# 1. 避免代码的冗余 # 2. 让程序代码结构更 ...
- python入门之函数对象
目录 函数是第一类对象 1.函数名可以被引用 2.函数名可以当做参数传递 3.函数名可以当做返回值使用 4.函数名可以被当做容器类型的元素 函数是第一类对象 First-Class Object : ...
随机推荐
- [转] Java8 日期/时间(Date Time)API指南
[From] http://www.importnew.com/14140.html Java 8日期/时间( Date/Time)API是开发人员最受追捧的变化之一,Java从一开始就没有对日期时间 ...
- Linux下Tomcat启动报 The BASEDIR environment variable is not defined
今天是2017年2月27.在Linux下部署Tomcat官网下载的Tomcat 8.5,结果启动startup.sh报如下错,即使只是跑version.sh也报同样的错. $ ./version.sh ...
- Python入门(1)
1.编程语言 机器语言:直接用计算机能听懂的二进制指令去编写程序,需要了解硬件的细节 汇编语言:用英文标签取代二进制指令去编写程序,同样需要了解硬件的细节 高级语言:直接用人类能理解的表达方式去编写程 ...
- jquery 去除字符串左右空格
/*** 删除左右两端的空格*/String.prototype.trim=function(){return this.replace(/(^\s*)|(\s*$)/g, '');} 调用方式: v ...
- linux 基础运维 之 Linux的闹钟
1. linux 删除一个文件的权限要看文件所在的目录的权限 删除文件需要对对这个目录拥有w权限 修改文件 查看文件的内容需要对文件有rw权限 删除 创建一个文件 需要对文件坐在地目录拥有wx权限2. ...
- Oracle 数据库和Sql Server数据库的区别
Oracle数据库的访问方式,和SqlServer数据库是有很大差别的,下面用图来说明: 1.Sql Server数据库 SqlServer数据库的访问方式,大致是:假设用户通过sa登录SqlServ ...
- 错误:38-Corel VideoStudio文件已损坏或被修改。请重新安装原始来源解决方法。
打开 Corel VideoStudio Pro X5(绘声绘影)弹出一下警告. 错误:38-Corel VideoStudio文件已损坏或被修改.请重新安装原始来源解决方法. [第一方法]:控制面板 ...
- css设置文字中间的小竖线
主要css属性是border-right border-right:1px solid gray; padding-right:10px; padding-left:10px; <div dat ...
- (五)html部分标签元素补充
html标签元素十分的多,一次性掌握全部,那是不可能的,在后续的学习中,会不断补充标签元素... 1.行元素和块元素 行标签元素即是标签元素根据内容大小进行自适应,而不是占据一整行. 如<spa ...
- linux基础-wget、apt-get、yum的区别
Linux操作系统下安装与下载软件是Linux非常基本也非常重要的命令,分清wget.apt-get.yum的区别很重要. Linux操作系统主要分为两大类: RedHat系列:Redhat.Cent ...