python入门15 函数

时间:2021-02-25 01:24:03

函数的主要作用是实现代码复用

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 函数的更多相关文章

  1. Python入门篇-函数、参数及参数解构

    Python入门篇-函数.参数及参数解构 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.函数概述 1>.函数的作用即分类 函数 数学定义:y=f(x) ,y是x的函数,x ...

  2. Python入门之 函数

    Python入门之 函数 1.初识函数 1.1 什么是函数? <1> 将某个功能封装到一个空间中就是一个函数 <2> 减少重复代码 1.2 定义函数 def -- python ...

  3. Python入门-初始函数

    今天让我们来初步认识一个在python中非常重要的组成部分:函数 首先,让我们来幻想这样一个场景: 比如说我们现在想要通过社交软件约一个妹子,步骤都有什么? print('打开手机 ') print( ...

  4. python入门总结-函数

    函数形式: def functionname(paramlist): function body 局部变量不改变实参的值,如果需要改变,声明global.比如,global x 可以给函数默认值,注意 ...

  5. python入门之函数

    为什么要用函数 python的函数是由一个新的语句编写,即def ,def是可执行的语句--函数并不存在,知道python运行了def后才存在. 函数是通过赋值函数传递的,参数通过赋值传递给函数. d ...

  6. Python入门之函数的装饰器

    本章目录: 装饰器: 一.为什么要用装饰器 二.什么是装饰器 三.无参装饰器 四.装饰器语法糖 五.认证装饰器实现 六.叠加多个装饰器 七.带参装饰器 ======================== ...

  7. Python入门之函数的嵌套&sol;名称空间&sol;作用域&sol;函数对象&sol;闭包函数

    本篇目录: 一.函数嵌套 二.函数名称空间与作用域 三.函数对象 四.闭包函数 ============================================================ ...

  8. Python入门day04&lowbar;函数与装饰器

    一.函数入门 什么是函数: # 函数:函数是一系列代码的集,用来完成特定功能的代码块,类似于工具,可以重复不但的去使用 为什么要有函数: # 优点:# 1. 避免代码的冗余 # 2. 让程序代码结构更 ...

  9. python入门之函数对象

    目录 函数是第一类对象 1.函数名可以被引用 2.函数名可以当做参数传递 3.函数名可以当做返回值使用 4.函数名可以被当做容器类型的元素 函数是第一类对象 First-Class Object : ...

随机推荐

  1. ODCA最佳实践翻译:Architecting Cloud-Aware Applications (一)

    Architecting Cloud-Aware Applications ** ODCA(Open Data Center Alliance)最佳实践 ** MagicBowen(e.bowen.w ...

  2. java StreamTokenizer使用

    注意:用JAVA解题一般用Scanner类来进行输入,但对时间要求严格的题,用它可能会超时,我.解POJ1823的时候就遇到这样的问题,后改用StreamTokenizer类进行输入,就过了.看来后者 ...

  3. &lbrack;Effective C&plus;&plus; --029&rsqb;为&OpenCurlyDoubleQuote;异常安全”而努力是值得的

    假设有个class用来表现夹带背景图案的GUI菜单单,这个class用于多线程环境,所以它有个互斥器(mutex)作为并发控制用: class PrettyMenu{ public: ... void ...

  4. 使用正则表达式给网址添加a标签

    在内容中存在链接地址的时候,我们在前台显示时一定想自动的将地址添加上a标签,方便用户进入链接.使用正则表达式就能轻松实现. Jsvascript正则替换 //javascript 正则替换 var s ...

  5. LVM(1)

    DM: DM: Device Mapper    逻辑设备        RAID, LVM2        DM: LVM2    快照    多路径

  6. PHP-FPM安装报错解决

    PHP源码安装 setenforce 0--------------------------------------------------------------------安装php时的报错che ...

  7. A1083&period; List Grades

    Given a list of N student records with name, ID and grade. You are supposed to sort the records with ...

  8. 每天一个linux命令&lpar;2&rpar;&colon;cd命令

    1.作用 cd(Change Directory 改变目录)命令用来切换工作目录至dirname. 其中dirName表示法可为绝对路径或相对路径.若目录名称省略,则变换至使用者的home direc ...

  9. Smart&sol;400开发上手3&colon; 练习实践

    练习题 在2006年1月1日之前入职且在职的营销员,给予年资补贴2000元: 符合以上条件的,再按以下标准一次性发放职级补贴: 职级代码 简称 补偿金额 A1 AD 6000 B1 SBM 5000 ...

  10. 提高搜狗SR值和关键词排名

    凭借“输入法-浏览器-搜索”三级火箭战略,搜狗搜狗使用率已超过10%,并成功挤掉谷歌成为国内第二大搜索引擎服务提供商.随着搜狗的快速发展,越来越多的站长将目光投向针对搜狗搜索的关键词优化. 大家都知道 ...