'''

1.定义一个func(name),该函数效果如下。

assert func("lilei") = "Lilei"

assert func("hanmeimei") = "Hanmeimei"

assert func("Hanmeimei") = "Hanmeimei"

'''

def func(name):
return capitalize(name) assert func("lilei") = "Lilei"
assert func("hanmeimei") = "Hanmeimei"
assert func("Hanmeimei") = "Hanmeimei"

"""

2.定义一个func(name,callback=None),效果如下。

assert func("lilei") == "Lilei"

assert func("LILEI",callback=str.lower) == "lilei"

assert func("lilei",callback=str.upper) == "LILEI"

"""

def func(name, callback=None):
if callback:
return callback(name)
else:
return name.capitalize() assert func("lilei") == "Lilei"
assert func("LILEI",callback=str.lower) == "lilei"
assert func("lilei",callback=str.upper) == "LILEI"

"""

3.定义一个func(*kargs),效果如下。

l = func(1,2,3,4,5)

for i in l:

print i,

输出 1 2 3 4 5

l = func(5,3,4,5,6)

for i in l:

print i

输出 5 3 4 5 6

"""

def func(*kargs):
return kargs l = func(1, 2, 3, 4, 5) for i in l:
print(i, end=" ")

"""

4.定义一个func(*kargs),该函数效果如下。

assert func(222,1111,'xixi','hahahah') == "xixi"

assert func(7,'name','dasere') == 'name'

assert func(1,2,3,4) == None

"""

def func(*kargs):
for x in kargs:
if isinstance(x, str):
return x assert func(222, 1111, 'xixi', 'hahahah') == "xixi"
assert func(7, 'name', 'dasere') == 'name'
assert func(1, 2, 3, 4) is None

"""

5.定义一个func(name=None,**kargs),该函数效果如下。

assert func("lilei") == "lilei"

assert func("lilei",years=4) == "lilei,years:4"

assert func("lilei",years=10,body_weight=20) == "lilei,years:4,body_weight:20"

"""

def func(name=None, **kargs):
new_list = ["%s:%s" %(k,v) for k, v in kargs.items()]
new_list.insert(0, name)
return ','.join(new_list) assert func("lilei") == "lilei"
assert func("lilei",years=4) == "lilei,years:4"
assert func("lilei",years=4,body_weight=20) == "lilei,years:4,body_weight:20"

python练习:函数4的更多相关文章

  1. python的函数

    函数一词起源于数学,但是在编程中的函数和数学中的有很大不同.编程中的函数式组织好的,可重复使用的,用于实现单一功能或相关联功能的代码块. 我们在学习过程中已经使用过一些python内建的函数,如pri ...

  2. python strip()函数 介绍

    python strip()函数 介绍,需要的朋友可以参考一下   函数原型 声明:s为字符串,rm为要删除的字符序列 s.strip(rm)        删除s字符串中开头.结尾处,位于 rm删除 ...

  3. python split()函数

    Python split()函数 函数原型: split([char][, num])默认用空格分割,参数char为分割字符,num为分割次数,即分割成(num+1)个字符串 1.按某一个字符分割. ...

  4. Python数学函数

    1.Python数学函数 1.abs(x):取绝对值,内建函数 2.math.ceil(x):向上取整,在math模块中 3.cmp(x,y):如果 x < y ,返回-1:如果 x == y ...

  5. Python回调函数用法实例详解

    本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函 ...

  6. Python之函数与变量

    本节内容 函数介绍及其作用 函数的定义与调用 函数的参数说明 全局变量与局部变量 值传递和引用传递 一.函数的介绍及其作用 编程语言中的函数与数学中的函数是有区别的:数学中的函数有参数(输入),就会有 ...

  7. Python基础-函数篇

    本节内容 1. 函数基本语法及特性 2. 参数与局部变量 3. 返回值 嵌套函数 4.递归 5.匿名函数 6.函数式编程介绍 7.高阶函数 8.内置函数  函数与函数式编程 1.面向对象: 华山派-- ...

  8. 【C++实现python字符串函数库】strip、lstrip、rstrip方法

    [C++实现python字符串函数库]strip.lstrip.rstrip方法 这三个方法用于删除字符串首尾处指定的字符,默认删除空白符(包括'\n', '\r', '\t', ' '). s.st ...

  9. 【C++实现python字符串函数库】二:字符串匹配函数startswith与endswith

    [C++实现python字符串函数库]字符串匹配函数startswith与endswith 这两个函数用于匹配字符串的开头或末尾,判断是否包含另一个字符串,它们返回bool值.startswith() ...

  10. 【C++实现python字符串函数库】一:分割函数:split、rsplit

    [C++实现python字符串函数库]split()与rsplit()方法 前言 本系列文章将介绍python提供的字符串函数,并尝试使用C++来实现这些函数.这些C++函数在这里做单独的分析,最后我 ...

随机推荐

  1. 用了pm2之后,如何让console.log('..')出现在控制台

    使用  pm2 log 0 可以查看.当然这个 0 应该是应用的 id

  2. Java设计模式:代理模式(转)

    代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能.这里使用到编程中的一 ...

  3. 为什么vue-cli创建的build文件下没有dev-server.js文件

    在新版本的Vue开发中,通过vue-cli创建的build文件夹下面已经没有了旧版本中的dev-server.js文件新版本的vue已将dev-server.js与webpack.dev.conf.j ...

  4. ubuntu14.04 rabbitmq重启丢失用户信息

    一.rabbitmq数据是根据当前hostname作为node节点作为数据名保存 二.添加rabbimq用户sudo rabbitmqctl add_user tlwlmy tlwlmysudo ra ...

  5. 一百四十八:部署python项目之环境依赖

    环境:centos7 + python3.6 准备工作,生成项目requirements.txt文件,用于存放第三方库和版本信息:pip freeze > requirements.txt,并且 ...

  6. 怎样修复社区项目Karbor的Bug?

    1.准备工作. 点击Settings按钮进行设置,跳转到 https://review.openstack.org/#/settings/ 2.选择用户名称. 这个选择之后不能修改. 3.设置http ...

  7. 123457123457#0#-----com.yuming.YiZhiFanPai01--前拼后广--益智早教游戏记忆翻牌cym

    com.yuming.YiZhiFanPai01--前拼后广--益智早教游戏记忆翻牌cym

  8. 【Kail 学习笔记】自用KAIL更新源

    打开 /etc/apt/source.list 添加-保存即可 deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contr ...

  9. Linux与windows的对比

    Linux与windows的对比 声明:下面的内容总结自实验楼的linux教程,特在此说明. Linux与windows一样,是一个操作系统. Linux与Windows的区别 软件与支持 windo ...

  10. Redis集群部署与维护

    Redis集群部署与维护 目录: 一. 集群架构 二. 集群部署 1. 创建redis-cluster目录 2. 编译redis 3. 编辑redis配置文件 4. 配置redis集群 5. redi ...