1、整理函数相关知识点,写博客

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

def func1(argv):
li = []
for i in range(len(argv)):#循环取奇数
if i %2 == 1:
li.append(argv[i])
return li
print(func1([1,2,3,4]))
def func(argv):return  argv[1::2]#切片方法
print(func([1,2,3,4]))

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

def func(argv):
if len(argv) > 5:
return True
else:return False
print(func('sjfjkskjf'))
def func(argv):
return True if len(argv) > 5 else False
print(func('jsajdjsaka'))
def func(argv):
return len(argv) > 5
print(func('adajjadj'))

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

def func(argv):
li = []
if len(argv) > 2:
li = argv[:2]
else:
li = argv
return li
print(func([2,4,4,3,2]))
def func(argv):
return argv[:2] if len(argv) > 2 else argv
print(func([1,3,4,5]))
def func(argv):
return argv[:2]
print(func([1,2,3,4]))

5、写函数,计算传入字符串中【数字】、【字母】、【空格] 以及 【其他】的个数,并返回结果。

def func(argv):
dic = {'digit':0,'alpha':0,'space':0,'other':0}
for i in argv:
if i.isdigit():
dic['digit'] += 1
elif i.isalpha():
dic['alpha'] += 1
elif i.isspace():
dic['space'] += 1
else:
dic['other'] += 1
return '数字%d,字母%d,空格%d,其他%d'%(dic['digit'],dic['alpha'],dic['space'],dic['other'])
print(func('ajdj2384234 大家安静**&&'))

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

dic = {"k1": "v1v1", "k2": [11,22,33,44]}

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

def func(argv):
for i in argv:
if len(argv[i]) > 2:
argv[i] = argv[i][:2]
return argv
print(func({"k1": "v1v1", "k2": [11,22,33,44]}))
def func(argv):
for i in argv:
argv[i] = argv[i][:2]
return argv
print(func({"k1": "v1v1", "k2": [11,22,33,44]}))

8、写函数,接收两个数字参数,返回比较大的那个数字。

def func(a,b):
if a>b:
return a
else:
return b
print(func(11,33))
def func(a,b):
z=a if a>b else b
return z
print(func(22,444))
def max_min(a,b):
return a if a>b else b
print(max_min(444,55))

9、写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作(进阶)。

import os
def File_modification(path,old,new):
with open(path,encoding='utf-8')as f1,\
open(path+'.bak',encoding='utf-8',mode='w') as f2:
for i in f1:
new_i = i.replace(old,new)
f2.write(new_i)
os.remove(path)
os.rename(path+'.bak',path)
return True
print(File_modification('a.txt','alex','SB'))

10、写一个函数完成三次登陆功能,再写一个函数完成注册功能(进阶)

def register():
while True:
flag = True
username = input('请输入用户名:')
with open('register_msg',encoding='utf-8')as f1:
for i in f1:
li = i.strip().split()
if username == li[0] or username == ' ':
print('用户名已存在,请重新输入')
break
else:
password = input('请输入密码:')
with open('register_msg',encoding='utf-8',mode='a')as f2:
f2.write('\n{}\t{}'.format(username,password))
print('注册成功')
return login() def login():
i = 0
while i <3:
i += 1
username = input('请输入用户名:')
password = input('请输入密码:')
with open('register_msg',encoding='utf-8') as f2:
for line in f2:
line = line.strip()
line_list = line.split(' ')
if username == line_list[0] and password == line_list[1]:
return True def func1(*args,**kwargs):
print('欢迎登录')
flag = True
while flag:
choice = input('1,登录,2,注册,Q,退出')
if choice == '':
is_login = login()
if is_login:
print('登录成功')
else:
print('登录失败')
flag = False
if choice == "":
register()
flag = False
elif choice == 'Q':
exit('bye')
flag = False func1()

python 的基础 学习 11天 作业题的更多相关文章

  1. Python入门基础学习 三

    Python入门基础学习 三 数据类型 Python区分整型和浮点型依靠的是小数点,有小数点就是浮点型. e记法:e就是10的意思,是一种科学的计数法,15000=1.5e4 布尔类型是一种特殊的整形 ...

  2. Python入门基础学习 二

    Python入门基础学习 二 猜数字小游戏进阶版 修改建议: 猜错的时候程序可以给出提示,告诉用户猜测的数字偏大还是偏小: 没运行一次程序只能猜测一次,应该提供多次机会给用户猜测: 每次运行程序,答案 ...

  3. Python入门基础学习 一

    Python入门基础学习 一 Python下载及安装 下载地址:https://www.python.org/,选择最新的版本下载 稍等一会,安装完成. 简单语句 从idle启动Python:IDLE ...

  4. python函数基础学习

    函数的定义与调用: def 函数名(参数1,参数2): ‘’’函数注释’’’ print(‘函数体’) return 返回值 定  义:def关键字开关,空格之后接函数名和圆括号,最后冒号结尾 def ...

  5. Python入门基础学习(文件与异常处理)

    Python基础学习笔记(七) 捕获异常的语法格式: 文件的基本操作: 打开文件 读.写文件 关闭文件 read方法 --读取文件: open函数的第一个参数是要打开的文件名(文件名区分大小写) 如果 ...

  6. Python入门基础学习(时间模块,随机模块)

    Python基础学习笔记(六) time模块: 时间的三种表示方法: 1.格式化字符串 2.时间戳 用来表示和1970年的时间间隔,单位为s 3.元组 struct_time 9个元素 time的st ...

  7. Python入门基础学习(模块,包)

    Python基础学习笔记(五) 模块的概念:模块是python程序架构的一个核心概念 每个以拓展名py结尾的python源代码文件都是一个模块 模块名同样也是一个标识符,需要符合标识符的命名规则 在模 ...

  8. Python入门基础学习(面向对象)

    Python基础学习笔记(四) 面向对象的三个基本特征: 封装:把客观事物抽象并封装成对象,即将属性,方法和事件等集合在一个整体内 继承:允许使用现有类的功能并在无须重新改写原来的类情况下,对这些功能 ...

  9. Python入门基础学习(函数)

    Python基础学习笔记(三) 函数的概念: 所谓函数,就是把具有独立功能的代码块组织为一个小模块,在需要的时候调用 函数的使用包含两个步骤: 1.定义函数 --封装独立的功能 2.调用函数 --享受 ...

随机推荐

  1. JavaScript ES6 核心功能一览

    JavaScript 在过去几年里发生了很大的变化.这里介绍 12 个你马上就能用的新功能. JavaScript 历史 新的语言规范被称作 ECMAScript 6.也称为 ES6 或 ES2015 ...

  2. windows 文件夹下所有文件名称

    dir dir /b 没有其它信息 dir /b >>xxx.txt 保存到txt

  3. Go strings.Builder

    Go strings.Builder 字符串拼接操作优化 最开始的时候,可能会使用如下的操作: package main func main() { ss := []string{ "sh& ...

  4. sklearn—特征工程

    sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...

  5. Linux下查看某个进程打开的文件数-losf工具常用参数介绍

    Linux下查看某个进程打开的文件数-losf工具常用参数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在linux操作系统中,一切皆文件.通过文件不仅仅可以访问常规数据,还 ...

  6. JAVA核心技术I---JAVA基础知识(查漏补缺private,static)

    一:private对于类和对象(同C++) private是只有这个类内部可以访问(类的成员函数和定义初始化) private是类之间的限制,而不是对对象的限制<重点> 同类对象是可以直接 ...

  7. python (大文件下载及进度条展示) 验证客户端链接的合法性,socketserver

    ##########总结########### 文件校验加进度条显示 ####server import os import json import socket import struct impo ...

  8. Part-Ten

    1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.

  9. vue项目中引用jquery

    1.使用npm安装 npm i jquery --S //jquery要小写 2.在package.json文件dependencies里面加入jq 3.在build文件夹的webpack.base. ...

  10. javaScript ES5常考面试题总结

    js的六种原始值 boolean null undefined number string symbol 坑1: 首先原始类型存储的都是值,是没有函数可以调用的,比如 undefined.toStri ...