3、python--第三天练习题
#1、简述普通参数、指定参数、默认参数、动态参数的区别
#1.普通参数就是传入的函数,没有默认值
def f(a):
a = a + 1
return a
print(f(3))
#2.指定参数
def f(a,b,c):
d = a + b + c
return d
print(f(2,4,5)) #没有指定参数就会按照顺序分别赋值给a,b,c
print(f(b=3,a=2,c=1)) #指定参数的值,不按照原来的顺序
#3.默认参数
def f(a,b=3): #在函数里指定了默认值
c = a + b
return c
print(f(3)) #传参数的时候可以传一个,赋值给a;b就等于原来的值
print(f(4,7)) #按照顺序赋值,a=4,b=7就被重新赋值
#4.动态参数
#动态参数 *args和**kwargs 是指当我们需要传入多个参数时,他们就代表多个参数,就不需要在括号里指定多个参数了。
def f(a,*args,**kwargs):
print(a,args,type(args),kwargs,type(kwargs))
d=f(22,33,44,k1=55,k2=66)
#2、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数
def sum(count):
number = 0
string = 0
space = 0
other = 0
for i in count:
if i.isdigit():
number += 1
elif i.isalpha():
string += 1
elif i.isspace():
space += 1
else:
other +=1
return '数字:'+str(number) + ';字母:'+ str(string) + ';空格:'+ str(space) +';其他:' + str(other)
print(sum('my name is fana 1234567'))
#3、写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
def sum(string):
if isinstance(string,(str,tuple,list,dict)):
if len(string) >= 5:
return '大于或等于5'
else:
return '小于5'
return None
#4、写函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容。
def space(args):
ret = '没有空内容'
if len(args) == 0:
ret = '有空内容'
for a in args:
if a.isspace():
ret = '有空内容'
return ret
print(space('fan a fan'))
#5、写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
def lis(args):
if len(args) > 2:
return args[:2]
if len(args) <= 2:
return args[0::]
print(lis([1,2]))
#6、写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
def lis(args):
lis2 = []
for i in args:
if args.index(i) % 2 == 1:
lis2.append(i)
return lis2
a = [1,2,3,4,5,6,7]
print(lis(a))
#7、写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
fana = {"k1": "v1v1", "k2": [11,22,33,44]}
#PS:字典中的value只能是字符串或列表
def dic(args):
dic2 = {}
for k,v in args.items():
if len(v) > 2:
dic2[k] = v[:2]
else:
dic2[k] = v
return dic2
fana = {"k1": "v1v1", "k2": [11, 22, 33, 44]}
print(dic(fana))
3、python--第三天练习题的更多相关文章
- 学习Python的三种境界
前言 王国维在<人间词话>中将读书分为了三种境界:"古今之成大事业.大学问者,必经过三种之境界:'昨夜西风凋碧树,独上高楼,望尽天涯路'.此第一境也.'衣带渐宽终不悔,为伊消得人 ...
- selenium webdriver (python) 第三版
感谢 感谢购买第二版的同学,谢谢你们对本人劳动成果的支持!也正是你们时常问我还出不出第三版了,也是你们的鼓励,让我继续学习整理本文档. 感谢乙醇前辈,第二版的文档是放在他的淘宝网站上卖的,感谢他的帮忙 ...
- Python第三天 序列 数据类型 数值 字符串 列表 元组 字典
Python第三天 序列 数据类型 数值 字符串 列表 元组 字典 数据类型数值字符串列表元组字典 序列序列:字符串.列表.元组序列的两个主要特点是索引操作符和切片操作符- 索引操作符让我 ...
- 简学Python第三章__函数式编程、递归、内置函数
#cnblogs_post_body h2 { background: linear-gradient(to bottom, #18c0ff 0%,#0c7eff 100%); color: #fff ...
- 初学Python(三)——字典
初学Python(三)——字典 初学Python,主要整理一些学习到的知识点,这次是字典. #-*- coding:utf-8 -*- d = {1:"name",2:" ...
- Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式
Python第三天 序列 5种数据类型 数值 字符串 列表 元组 字典 各种数据类型的的xx重写xx表达式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell ...
- python selenium 三种等待方式详解[转]
python selenium 三种等待方式详解 引言: 当你觉得你的定位没有问题,但是却直接报了元素不可见,那你就可以考虑是不是因为程序运行太快或者页面加载太慢造成了元素不可见,那就必须要加等待 ...
- python第三十一课--递归(2.遍历某个路径下面的所有内容)
需求:遍历某个路径下面的所有内容(文件和目录,多层级的) import os #自定义函数(递归函数):遍历目录层级(多级) def printDirs(path): dirs=os.listdir( ...
- Python的三种格式化输出
今天刚学了python的三种格式化输出,以前没接触过这么有趣的输出方式,现在来分享一下. #!/user/bin/env python#coding:utf-8#三种格式化输出 #第一种格式化输出na ...
- Python进阶(三十五)-Fiddler命令行和HTTP断点调试
Python进阶(三十五)-Fiddler命令行和HTTP断点调试 一. Fiddler内置命令 上一节(使用Fiddler进行抓包分析)中,介绍到,在web session(与我们通常所说的se ...
随机推荐
- python基础学习记录......
1.IDEA写python 打开IDEA,File--->settings---->Plugins 输入python 安装 重启IDEA 2.新建Project 选择P ...
- Python--jsonpath
JsonPath是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种原因实现保本:JavaScript/Python/PHP和Java. 使用方法如: import jsonpathre ...
- Vue CLI 3开发中屏蔽的EsLint错误 (.eslintrc.js 在vue3+中 修改这个)
1.关闭eslint校验有了eslint的校验,可以来规范开发人员的代码,是挺好的.但是有些像缩进.空格.空白行之类的规范,在开发过程中一直报错,未免太过于苛刻了.所以,我还是会选择关闭eslint校 ...
- springboot 整合 web 项目找不到 jsp 文件
今天遇到一个问题,就是使用springboot整合web项目的时候,怎么都访问不到 \webapp\WEB-INF\jsp\index.jsp 页面.这个问题搞了半天,试了各种方式.最后是因为在启动的 ...
- 一个炒鸡好用的pdf阅读器
下载地址:https://www.sumatrapdfreader.org/free-pdf-reader.html 一个关系很好的同事推荐的pdf阅读器 之前用的感觉不错 每次都记不住 自己收 ...
- C++ raw string literal
raw string literal 以 R"( 开头, )" 结束,是可以跨越多行的字符串字面值,转义字符如 \t\n 在raw string literal中是普通的文本 ...
- bootstrap 模态框在iphone微信内点击无效
<a data-toggle="modal" data-target="#wwww" href="" οnclick=" ...
- iOS 9.0中UIAlertController的用法。
1.我为什么要写这篇博客记录它? 答:因为 UIAlertView和UIActionSheet 被划线了 苹果不推荐我们使用这两个类了,也不再进行维护和更新,为了以后方便使用我来记录一下.如图所示 正 ...
- 单选框 RadioButton
activity_main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout ...
- 13 Windows编程——系统内置窗口子类型之静态子窗口
静态子窗口类型 wndclass:static 源码 #include<Windows.h> #include<Windowsx.h> HINSTANCE G_h; LRESU ...