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.__ ...
随机推荐
- time clock getrusage clock_gettime gettimeofday timespec_get 对比
http://stackoverflow.com/questions/12392278/measure-time-in-linux-time-vs-clock-vs-getrusage-vs-cloc ...
- 传输层两大协议:TCP和UDP
1. UDP 1.1 发送方式(如何发送) 面向无连接. 无状态服务. 不保证不丢失,不保证按顺序到达. 1.2 发送形式(发送的是什么) 基于数据报. 一个一个的发送,一个一个的接收. 1.3 使用 ...
- 安装rlwrap方便sqlplus使用
rlwrap包 这是一个为方便使用SQL*PLUS的技巧,为了能像在DOS命令窗口中那样运行SQL*Plus,使用向上.向下键来跳回之前已经执行过的SQL语句. 需要在Linux上安装rlwrap包, ...
- odoo开发笔记 -- 日常开发注意点小节
onchange depends区别 视图字段增加readonly属性
- 剑指offer二十之包含min函数的栈
一.题目 定义栈的数据结构,请在该类型中实现一个能够得到栈最小元素的min函数. 二.思路 用一个栈dataStack保存数据,用另外一个栈minStack保存依次入栈最小的数.每次元素存入minSt ...
- Android开发艺术探索学习笔记(四)
第四章 View的工作原理 4.1初识ViewRoot和DecorView ViewRoot是连接WindowManager和DecorView的纽带,View的三大流程均是通过ViewRoot来完成 ...
- poj1330-----------关于公共祖先的问题
关于公共祖先的问题分类: 这类问题有多种解法和类型,根据题目给出的信息去判断使用哪一种 1.给你树,只支持从父亲找儿子,不支持儿子找父亲,最后要求最近公共祖先,使用dfs或者分治 2.支持儿子找父亲, ...
- 浅尝Vue.js组件(一)
本篇目录: 组件名 组件注册 全局注册 基础组件的自动化全局注册 局部注册 在模块系统中局部注册 Prop 单向数据流 Prop验证 类型检查 非Prop特性 替换/合并已有的特性 禁用特性继承 自定 ...
- Spring总结 1.装配bean
本随笔内容要点如下: 依赖注入 Spring装配bean的方式 条件化装配 一.依赖注入 我理解的依赖注入是这样的:所谓的依赖,就是对象所依赖的其他对象.Spring提供了一个bean容器,它负责创建 ...
- 第一次项目上Linux服务器(三:安装Tomcat及相关命令)
一.下载Tomcat 去官网:http://tomcat.apache.org/ 找到要下载的Tomcat 本人下载的是apache-tomcat-8.5.29.tar.gz,百度云资源链接:链接:h ...