1.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者。
def new(args):
a = []
for I in range(1,len(args),2):
a.append(args[I])              ### return args[0::2]
return a   ret = new([10,11,12,13,14,15,16])
print(ret)   2.写函数,判断用户传入的对象(字符串、列表、元组)长度是否大于5。 def five(args):
if len(args) > 5:
return 'yes'
else:
return 'no' ret = five('世上只有')
print(ret) 3.写函数,检查传入列表的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
def two(args):
a = []
if len(args) > 2:            ### return args[0:2]
for I in range(2):
a.append(args[I])
else:
a.append(args)
return a ret = two([1,2,3])
print(ret) 4.写函数,计算传入函数的字符串中,[数字]、[字母]、[空格] 以及 [其他]的个数,并返回结果
def jisuan(args):
shuzi = 0
alpha = 0
space = 0
qita = 0
for I in args:
if I.isdigit():
shuzi += 1
elif I.isalpha():
alpha += 1
elif I.isspace():
space += 1
else:
qita += 1
return shuzi,alpha,space,qita ret = jisuan("12345 ")
print(ret) ### 利用字典方法来解决: abc = "sa vw,vwv.avvv"
dic = {'digit':0,'alpha':0,'space':0,'qita':0}
for I in abc:
if I.isdigit():
dic['digit'] += 1
elif I.isalpha():
dic['alpha'] += 1
elif I.isspace():
dic['space'] += 1
else:
dic['qita'] += 1
print(dic) 5.写函数,接收两个数字参数,返回比较大的那个数字。 def bijiao(num1,num2):
return max(num1,num2)
num = input('请输入两个数字,逗号隔开:').split(',')
ret = bijiao(num[0],num[1])
print(ret) 6.写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
dic = {“k1”: “v1v1”, “k2”: [11,22,33,44]}
PS:字典中的value只能是字符串或列表 def two(args):
for k,v in args.items():
if len(v) > 2:
args[k] = args[k][0:2]
return args
ret = two({'k1': 'v1v1', 'k2': [11, 22, 33, 44]})
print(ret) 用字典的方法解决: # dic = {'k1': 'v1v1', 'k2': [11, 22, 33, 44]}
# for k,v in dic.items():
# if len(v) > 2:
# dic[k] = dic[k][0:2]
# print(dic) 7.写函数,此函数只接收一个参数且此参数必须是列表数据类型,
此函数完成的功能是返回给调用者一个字典,此字典的键值对为此列表的索引及对应的元素。
例如传入的列表为:[11,22,33] 返回的字典为 {0:11,1:22,2:33}。 def fan(args):
a = {}
for i in range(len(args)):
a[i] = args[i]
return a ret = fan([11,22,33])
print(ret) 8.写函数,函数接收四个参数分别是:姓名,性别,年龄,学历。
用户通过输入这四个内容,然后将这四个内容传入到函数中,此函数接收到这四个内容,将内容追加到一个student_msg文件中。 def inp(name,sex,age,xueli):
f = open('student_msg',mode='a',encoding='utf-8')
f.write('{}\t{}\t{}\t{} \n'.format(name,sex,age,xueli))
print('追击成功')
return na = input('输入名字:')
se = input('输入性别:')
ag = input('输入年龄:')
xe = input('输入学历:')
inp(na,se,ag,xe) 9.对第9题升级:支持用户持续输入,Q或者q退出,性别默认为男,如果遇到女学生,则把性别输入女。 def inp(name,age,xueli,sex = '男'):
f = open('student_msg',mode='a',encoding='utf-8')
f.write('{}\t\t{}\t\t{}\t\t{} \n'.format(name,age,xueli,sex))
print('追击成功')
return while True:
na = input('输入名字:')
if na.strip().lower() == 'q':
break
else:
ag = input('输入年龄:')
xe = input('输入学历:')
se = input('输入性别:')
if se == '女':
inp(na,ag,xe,se)
else:
inp(na,ag,xe) 10.写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作(升级题)。 def xiu(file,file2,qian,hou):
with open(file,mode='r+',encoding='utf-8') as f1,open(file2,mode='w',encoding='utf-8') as f2:
for line in f1:
if qian in line:
line = line.replace(qian,hou)
f2.write(line)
import os
os.remove(file)
os.rename(file2,file)
return
file1 = input('请输入你要修改的文件带地址:')
file2 = input('请随意输入一个文件名,重复即可:')
name1 = input('请输入你要替换的关键字:')
name2 = input('请输入你想要替换的关键字:')
xiu(file1,file2,name1,name2) 11.写一个函数完成三次登陆功能,再写一个函数完成注册功能(升级题) def login():
count = 0
while count < 3:
username = input('请输入用户名:')
password = input('请输入密码:')
if username.strip() == 'jiu' and password.strip() == '':
print('登陆成功')
break
else:
last = 2 - count
print('用户或密码名错误,剩余次数',last)
count += 1 def register():
username = input('请输入注册的用户名:')
password = input('请输入要注册的密码:')
with open('user_msg',mode='a',encoding='utf-8') as f1:
f1.write('{}:{} \n'.format(username,password))
print('注册成功用户名和密码为:'+ username+password)

day9.初始函数练习题的更多相关文章

  1. day 09初始函数

    # with open('小护士班主任',encoding='utf-8') as f,open ('小护士班主任.bak','w',encoding='utf-8')as f2: # for lin ...

  2. python之路---09 初始函数 参数

    二十七.初始函数 1.函数: 对代码块和功能的封装和定义 2.格式及语法 def  函数名()           #  定义 函数体 函数名()              #  调用 3.    r ...

  3. day10上节内容补充和初始函数

    1.上节内容补充 文件的删除和修改: #文件的删除和修改 #文件中全部都要修改 # with open('歌词',encoding='utf-8') as f1,open('歌词.bak','w',e ...

  4. Python基础篇(初始函数)

    Python初始函数: 一.什么是函数 1.我们到目前为止, 已经可以完成一些软件的基础功能了. 那么我们来完成这样一个功 能: 约x: print("拿出手机") print(& ...

  5. day9 函数练习题

    写代码,接受n个数字,求这些数字的和 def sum_func(*args): total = 0 for i in args: total+=i return total print(sum_fun ...

  6. Python文件与函数练习题

    练习题 文件处理相关 编码问题 请说明python2 与python3中的默认编码是什么? python2默认是ASCII码,python3默认是utf-8 为什么会出现中文乱码?你能列举出现乱码的情 ...

  7. python函数(1):初始函数

    在学了前面很多python的基础类型后,我们终于可以进入下一阶段,今天我们将走进一个函数的新世界. 预习: 1.写函数,计算传入字符串中[数字].[字母].[空格] 以及 [其他]的个数 2.写函数, ...

  8. python学习日记(内置、匿名函数练习题)

    用map来处理字符串列表 用map来处理字符串列表,把列表中所有水果都变成juice,比方apple_juice fruits=['apple','orange','mango','watermelo ...

  9. python学习初始函数

    函数的用途:解决代码的冗余.可读性差.可扩展性差. 函数的一般格式: #函数定义 def mylen(): """计算s1的长度""" s1 ...

随机推荐

  1. 使用vue-cli初始化vue项目

    在项目中使用vue我使用vue-cli脚手架搭建项目 1.先安装nodejs 2.使用npm install -g vue-cli (建议在使用这步前先安装nrm来切换npm的源利器,使得下载资源更快 ...

  2. 通过uwsgi+nginx启动flask的python web程序

    通过uwsgi+nginx启动flask的python web程序 一般我们启动python web程序的时候都是通过python直接启动主文件,测试的时候是可以的,当访问量大的时候就会出问题pyth ...

  3. Mysql按条件计数的几种方法

    最近在给某网站的后台添加一系列的统计功能,遇到很多需要按条件计数的情况.尝试了几种方法,下面简要记录,供大家参考. 问题描述 为使讨论简单易懂,我将问题稍作简化,去掉诸多的背景. 从前有一个皇帝,他有 ...

  4. Light OJ 1095

    题意: 给你 N 个数, 总共有 N! 种排列, 现在 要你统计前 M 个数 刚好 有K 个数 在原来的位置上 的排列个数 思路: 首先 M 中选 K C(m,k): 则 共 剩下 n - k 个数, ...

  5. 如何在Mac 终端上Git 项目的一次常规操作

    首先,Git的工作流是怎样的? 你的本地仓库由 git 维护的三棵“树”组成. 第一个是你的 工作目录,它持有实际文件: 第二个是 暂存区(Index),它像个缓存区域,临时保存你的改动: 最后是 H ...

  6. [PHP]curl上传多文件

    码一下curl上传多文件的行 5.5之前版本的写法 $file = array( 'pic[0]'=>"@E:\\wwwroot\\10003\\temp_56.ini;type=te ...

  7. python-模块入门二(模块循环导入,区分python文件的两种用途,模块搜索路径,软件开发的目录规范)

    一.模块的循环导入问题 run.py # import m1 # 第一次导入 m1.py # 错误示范 ''' print('正在导入m1') from m2 import y #第一次导入m2 x= ...

  8. 用Python优雅的处理日志

    我们可以通过以下3种方式可以很优雅配置logging日志: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数: 2)创建一个日志配置文 ...

  9. 做了5年的Android,我转Java后台了!

    很多人做Java开发4,5年后,都会感觉自己遇到瓶颈.什么都会又什么都不会,如何改变困境,为什么很多人写了7,8年还是一个码农,工作中太多被动是因为不懂底层原理.公司的工作节奏又比较快,难有机会学习架 ...

  10. Jenkins二 安装gitlab及其使用

    git --version 如果没有安装git直接源码安装即可,如果安装了先删除原来的git. yum -y remove git先安装编译git需要的包. yum install zlib-deve ...