一、简述普通参数、指定参数、默认参数、动态参数的区别

普通参数:就是放入一个形参,当放入实参时,需要按照顺序给形参值。

指定参数:放入实参时是指定的,不用按照顺序给形参,都能让形参获得相应的参数。

默认参数:在形参内指定一个参数,需要放在形参的最后面。当实参没有给值时,就默认是形参的值。

动态参数:格式:*args 和 **kwargs 前面一个保存为元组,后面一个保存为字典。

二、写函数,计算传入字符串中的【数字】、【字母】、【空格】和【其他】的个数

#!/bin/bash/env python
# -*- coding:utf-8 -*-
#function:写函数,计算传入字符串中的【数字】、【字母】、【空格】和【其他】的个数 def func1(p):
digit_number = 0
space_number = 0
alpha_number = 0
else_number = 0
for i in p:
if i.isdigit(): #检查字符串是否只由数字组成
digit_number += 1
elif i.isspace(): #检查字符串是否只由空格组成
space_number += 1
elif i.isalpha(): #检查字符串是否只由字母组成
alpha_number += 1
else:
else_number += 1
return (digit_number,space_number,alpha_number,else_number) r = func1("qwer 123")
print(r) 结果:
(3, 2, 4, 0)

三、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5

#!/bin/bash/env python
# -*- coding:utf-8 -*-
#function:写函数,计算传入字符串中的【数字】、【字母】、【空格】和【其他】的个数 def func1(p):
i1 = len(p)
print(i1)
if i1 > 5:
print('Yes,the length higher than 5')
else:
print('NO')
r = func1((11,22,33)) 结果:

3
NO

四、写函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容

#!/bin/bash/env python
# -*- coding:utf-8 -*-
#function:写函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容 def func1(p,q,i):
if p == "":
print('字符串有')
if q == []:
print('列表有')
if i == ():
print("元组有")
r = func1("123",[11,22],()) 结果:
元组有

五、写函数,检查传入列表的长度,如果大于2,那么仅仅保留前两个长度的内容,并将新内容返回给调用者

#!/bin/bash/env python
# -*- coding:utf-8 -*-
#function:写函数,检查传入列表的长度,如果大于2,那么仅仅保留前两个长度的内容,并将新内容返回给调用者 def func1(p):
i1 = len(p)
if i1 > 2:
i2 = p[0:2]
return i2 r = func1([11,22,33,44,55])
print(r) 结果:
[11, 22]

六、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新的列表返回给调用者

#!/bin/bash/env python
# -*- coding:utf-8 -*-
#function:写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新的列表返回给调用者 def func1(p,q):
result = []
for i1 in range(len(p)):
if i1 % 2 == 1:
result.append(p[i1])
for i2 in range(len(q)):
if i2 % 2 == 1:
result.append(p[i2])
print(result)
r = func1([11,22,33],(11,22,33)) 结果:
[22,22]

七、写函数,检查传入字典的每一个value的长度,如果大于2,那么仅仅保留前两个长度的内容,并将新内容返回给调用者

dic = {“k1”: "v1v1","k2":[11,22,33}}

ps:字典中的value只能是字符串或列表

#!/bin/bash/env python
# -*- coding:utf-8 -*-
#function:检查传入字典的每一个value的长度,如果大于2,那么仅仅保留前两个长度的内容,并将新内容返回给调用者 def func1(**p):
for key,value in p.items(): if len(value) > 2:
p[key] = value[0:2]
return p
r = func1(k1="v1v1",k2=[11,22,33,44,55])
print(r) 结果:
{'k1': 'v1', 'k2': [11, 22]}

  

Python之函数练习题的更多相关文章

  1. Python之基础练习题

    Python之基础练习题 1.执行 Python 脚本的两种方式 2.简述位.字节的关系 解:8位是一个字节 3.简述 ascii.unicode.utf-8.gbk 的关系 4.请写出 “李杰” 分 ...

  2. Python:程序练习题(二)

    Python:程序练习题(二) 2.1温度转换程序. 代码如下: t=input("请输入带符号的温度值(如:32C):") if t[-1] in ["C", ...

  3. python的函数

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

  4. python strip()函数 介绍

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

  5. python split()函数

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

  6. Python数学函数

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

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

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

  8. Python之函数与变量

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

  9. Python基础-函数篇

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

随机推荐

  1. 【转】Rails中Bootstrap的安装和使用

     转自:http://blog.csdn.net/lissdy/article/details/9195651   眼看着前端攻城师们都开始使用Bootstrap创作网页,于是也想学着在最近正在学习的 ...

  2. Rails 表单总结

    1.button <%= button_to "删除",{:controller =>"welcome",:action =>"de ...

  3. JeeSite入门介绍(一)

    JeeSite特点:高效.高性能.强安全性属于开源.JavaEE快速开发平台:接私活的最佳助手: JeeSite是在Spring Framework基础上搭建的一个Java基础开发平台,以Spring ...

  4. 2016.2.24 利用用户控件和委托完美解决快速选择txbbox

    1.首先将tet_box和一个datagridview控件打包成用户控件uC_QuickTxtBox 2.在用户控件中定义执行主窗口的委托函数 3.主窗体中添加用户控件的load事件,赋值 uC_Qu ...

  5. 第八章 Java中的并发工具类

    等待多线程完成的CountDownLatch countDownLatch允许一个或多个线程等待其他线程完成操作. public class CountDownLatchTest { static C ...

  6. XSS的各种用途

    0x01 最常见之窃取用户cookie 当cookie没有设置HttpOnly属性时,可以通过javascript代码创建img,script,iframe等标签,并把src属性设置为自己部署的xss ...

  7. CentOS 6.3 下编译Nginx(笔记整理)

    1. 安装关联程序 [root@localhost opt]# yum search gcc [root@localhost opt]# yum install gcc-c++ [root@local ...

  8. os模块 os.stat('path/filename') os.path.dirname(path) os.path.exists(path)  os.path.join(path1[, path2[, ...]])

    提供对操作系统进行调用的接口 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname")  改变当前脚本工作目录:相当于 ...

  9. vue 的全局拦截器

    使用拦截器 你可以截取请求或响应在被 then 或者 catch 处理之前 mounted:function(){ Vue.http.inserceptors.push(function(resque ...

  10. repeater的command事件用法

    当Repeater里面循环控件时就会用到command, 是Repeater控件的原生事件用法 Repeater里面如果循环控件,控件的ID是会被改变的 repeater.itemcommand+= ...