python学习之老男孩python全栈第九期_day009作业
1. 写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
答:
l1 = []
def odd(li):
for i in range(1,len(li),2):
l1.append(li[i])
return l1
rec = ['KID', '灵均', '尹宁', '',123,456]
odd(rec)
print(l1)
结果:
['灵均', '', 456]
2. 写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。
答:
def length(s):
if len(s) > 5:
return '长度大于5.'
else:
return '长度不大于5'
l = ['',2,3,4,5,6]
rec = length(l)
print(rec)
结果:
长度大于5.
3. 写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
答:
def func(s):
if len(s) > 2:
return s[:2]
else:
return s
li = [1,2,3,4,5,6,7,8,9]
rec = func(li)
print(rec)
结果:
[1, 2]
4. 写函数,计算传入字符串中[数字]、[字母]、[空格] 以及 [其他]的个数,并返回结果。
答:
def count(s):
dict = {'数字的个数:':0, '字母的个数:':0, '空格的个数:':0, '其他的个数:':0}
for i in s:
if i.isdigit():
dict['数字的个数:'] += 1
elif i.islower() or i.isupper():
dict['字母的个数:'] += 1
elif i.isspace():
dict['空格的个数:'] += 1
else:
dict['其他的个数:'] += 1
return dict
str = input('请输入内容:')
res = count(str)
print(res)
5. 写函数,检查用户传入的对象(字符串、列表、元组)的每一个元素是否含有空内容,并返回结果。
答:
def space(s):
if isinstance(s,(str, list, tuple)):
for i in s:
i = str(i)
if i.isspace():
return '含空内容'
return
else:
return '不是字符串,列表或元组'
a = [1, 2, 3, ' ',4, '', 5]
a1 = [1, 2, 3, 4, '', 5]
b = ' '
c = 'afagjk 啊哈搜集'
d = [' ',2,3,4,5]
e = (1,2,3,4,' ','')
f = {'name':'KID'}
print(space(a))
print(space(a1))
print(space(b))
print(space(c))
print(space(d))
print(space(e))
print(space(f))
结果:
含空内容
None
含空内容
含空内容
含空内容
含空内容
不是字符串,列表或元组
6. 写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
dic = {"k1": "v1v1", "k2": [11,22,33,44]}
PS:字典中的value只能是字符串或列表
答:
def func(s):
dic1 = {}
if isinstance(s,dict):
for k,v in s.items():
if len(v) > 2:
s[k] = v[0:2]
return s
else:
return '不是字典'
dic = {'k1': 'v1v1', 'k2': [11,22,33,44]}
res = func(dic)
print(res)
结果:
{'k1': 'v1', 'k2': [11, 22]}
7. 写函数,接收两个数字参数,返回比较大的那个数字。
答:
def func(a,b):
if a > b:
return a
else:
return b
res = func(1,2)
print(res)
结果:
2
8. 写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作(进阶)。
9. 写一个函数完成三次登陆功能,再写一个函数完成注册功能
答:
user_name = 'KID'
password = '' def login():
for i in range(0,3):
name = input('请输入账号:')
if name == user_name:
psw = input('请输入密码:')
if psw == password:
print('恭喜你,登录成功.')
return
else:
print('密码输入错误')
if i == 2:
print('您的机会已用完,请12小时之后再试')
else:
print('您还有%s次机会' % (2 - i))
else:
print('该账号不存在')
if i == 2:
print('您的机会已用完,请12小时之后再试')
else:
print('您还有%s次机会' % (2 - i))
res = login() def regist():
while 1:
re_name = input('昵称')
if re_name == user_name:
print('该用户已存在')
else:
re_psw = input('密码')
return '注册成功'
ret = regist()
print(ret)
python学习之老男孩python全栈第九期_day009作业的更多相关文章
- python学习之老男孩python全栈第九期_day002作业
1. 判断下列逻辑语句的True,False.(1) 1 > 1 or 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6Tru ...
- python学习之老男孩python全栈第九期_day015作业_老男孩Python全9期练习题(面试真题模拟)
一. 选择题(32分) 1. python不支持的数据类型有:AA. charB. intC. floatD. list 2. Ex = ‘foo’y = 2print(x + y)A. fooB. ...
- python学习之老男孩python全栈第九期_day007作业
一.关系运算 有如下两个集合,pythons是报名python课程的学员名字集合,linuxs是报名linux课程的学员名字集合pythons={'alex','egon','yuanhao','wu ...
- python学习之老男孩python全栈第九期_day009之文件操作总结
# 文件处理# 打开文件# open('路径','打开方式', '指定编码方式')# 打开方式:r w a 可读可写:r+ 可写可读:w+ 可追加可读:a+ b# r+ :打开文件直接写,和读完再写 ...
- python学习之老男孩python全栈第九期_day016作业
1. 请利用filter()过滤出1~100中平方根是整数的数,即结果应该是: [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] import math def func( ...
- python学习之老男孩python全栈第九期_day001作业
1.使用while循环输入 1 2 3 4 5 6 8 9 10 count = 0 while count <= 9: count += 1 if count == 7:continu ...
- python学习之老男孩python全栈第九期_day004作业
看代码写结果:1. a=[1,2,3,6,"dfs",100]s=a[-1:]print (s) 结果:[100] 2. s=a[-1:0:-1]print(s) 结果:[100, ...
- python学习之老男孩python全栈第九期_day003作业
1. 有变量name = "aleX leNb" 完成如下操作:(1) 移除 name 变量对应的值两边的空格,并输出处理结果name = ' aleX leNb 'print(n ...
- python学习之老男孩python全栈第九期_day014作业
0. 默写a. 生成器函数获取移动平均值例子: def init(func): def inner(*args,**kwargs): ret = func(*args,**kwargs) ret.__ ...
随机推荐
- underscore.js源码研究(6)
概述 很早就想研究underscore源码了,虽然underscore.js这个库有些过时了,但是我还是想学习一下库的架构,函数式编程以及常用方法的编写这些方面的内容,又恰好没什么其它要研究的了,所以 ...
- .net core Error -4090 EADDRNOTAVAIL address not available”
问题原因:IP地址错误或者网络未开
- EF6使用Mysql,踏过的那些坑
在vs2013中使用mysql连接entityFramework经常会遇到这个问题:您的项目引用了最新实体框架:但是,找不到数据连接所需的与版本兼容的实体框架数据提供程序.请退出此向导,安装兼容提供程 ...
- cmd命令关闭占用程序的端口
遇到的问题: 在重新启动tomcat服务时,启动失败,显示的信息大概为:Error running 'cus_manager_system': Unable to open debugger port ...
- web 基础
web服务器和应用服务器以及web应用框架: web服务器:负责处理http请求,响应静态文件,常见的有Apache,Nginx以及微软的IIS. 应用服务器:负责处理逻辑的服务器.比如php.pyt ...
- 利用Warensoft Stock Service编写高频交易软件--DEMO
利用Warensoft Stock Service编写高频交易软件 无论是哪种交易软件,对于程序员来讲,最麻烦的就是去实现各种算法.本文以SAR算法的实现过程为例,为大家说明如何使用Warensoft ...
- VScode中支持Python虚拟环境
要在VScode中使用Python的virtualenv虚拟环境,首先在设置同添加虚拟环境所在目录和虚拟环境的识别规则: { ... "python.venvPath": &quo ...
- python处理json格式的数据
这里我就不介绍json了,不知道json的同学可以去百度一下json,首先我们的json的格式如下,这个json有点长,这个json来自我以前的一个小任务,具体看这里:http://www.cnblo ...
- 编写自己的SpringBoot-starter
前言 我们都知道可以使用SpringBoot快速的开发基于Spring框架的项目.由于围绕SpringBoot存在很多开箱即用的Starter依赖,使得我们在开发业务代码时能够非常方便的.不需要过多关 ...
- vue中修改Element ui样式不起作用
公司做的一个后台系统,由于Elemen ui是响应式的,在小屏笔记本中,一行两列的表单会自动变成一行一列,这样就很不美观了,由于是后台系统,当时也没考虑适配问题. 老总 地表最强的电脑 运行了一下,当 ...