day31 作业试题讲解

时间:2021-02-08 08:26:52
 #__author__: Administrator
#__date__: 2018/8/8
# 基础知识
# 1.文件操作有哪些模式?简述作用
# r w a 至少你要说出这三个
# rb wb ab r+ w+ a+ 其实特么还有这些呢,可别几把忘了啊
# 2.s = "**hello,world!**" 使用strip方法去掉两端的 *
# s.strip("*")
# 3.用户输入一个任意数字n,求1 - n之间所有数字的奇数 # n = int(input(">>>"))
# i = 1
# while True:
# if i < n:
# print(i)
# i += 2
# else: break # range(1,n,2) # 4.s = "hdjahkhssshdjhskjhdkshk",去除重复的字符 # set 集合无序,会破坏原有的顺序的 # s = "hdjahkhssshdjhskjhdkshk"
# l = []
# for i in s:
# if i not in l:
# l.append(i) # 5.打印出啥?why?
# a = 10
# b = 20
# def test(a,b):
# print(a,b)
# c = test(b,a)
# print(c)
# 20 10 none # 6. s = "123.33ssdfa3434.sed16ss16.41" 计算字符串所有数字的和
# 123.33+3434.16+16.41
# from re import findall
# s = "123.33ssdfa3434.16ss16.41"
# ret = findall("\d+\.?\d+",s)
# a = "+".join(ret)
# print(eval(a))
# 7. d = {"k1":"v1","k2":[1,2,3],("k","3"):{1,2,3}}
# 用程序实现:
# 输出字典中的value为列表的key
# 如果字典中的key为元祖,输出对应的value值
# d[("k":"3")]对应的value是一个什么数据类型 # d = {"k1":"v1","k2":[1,2,3],("k","3"):{1,2,3}}
# for i in d:
# if type(d[i]) is list:
# print(i)
# if type(i) is tuple:
# print(d[i])
# print(type(d[("k","3")])) # 8. 如果不使用@ wrapper装饰器,在a()前加一句代码达到相同效果
# def wrapper(func):
# def inner(*args,**kwargs)
# func()
# return inner
#
# @wrapper
# def a(arg):
# print(arg)
# # a = wrapper(a) # 答案
# a() # 9. 处理文件a.txt 输出素有以"T"开头的行
# with open("a.txt","r") as f:
# for line in f :
# if line.startswith("T"):
# print(line) # 10. 画个流程图
# 开始--圆矩
# 输账号--平四
# 输密码--平四
# 数据库--圆柱 # 读文件--正方
# 判断--菱角
# 成功--平边 # 失败--平边
# 回去重新输入
# 退出 圆矩
# 结束(平行四边) # 10 写出调用顺序和结果 # def f1():
# print("f1")
# def f2():
# print("f2")
# return 1
# def f3(func1):
# ll = func1()
# print("f3")
# return ll
# print(f3(f2)) # f2
# f3
# # 11. 简述闭包需要满足几点
# 必须是嵌套函数,且内部函数调用外部变量 # 12. 将时间进行格式打印,格式化时间,
# time.structtime # 13. 用什么模块知道文件夹存不存在,以及获取文件大小
# os.path.isdir
# 循环这个文件夹里面所有的文件,然后再相加 # 14. 写出匹配手机号的正则
# 1[3456789][\d]{9} # 15. 有四个数,1,2,3,4,能组成多个互不相同且无重复的数字三位数
count = 0
# for i in range(1,5):
# for j in range(1,5):
# for k in range(1,5):
# if i == j or i == k or j == k:
# continue
# count += 1
# print(str(i)+str(j)+str(k))
# print(count) # 16. 面向对象的三大特性
# 封装,继承,多态 # 17. 对下面的类初始化10个对象,求最高的age的对象的name
# class Person():
# def __init__(self,name,age):
# self.name = name
# self.age = age
# # obj_list 是存放对象的列表
# ret = max(obj_list,key=lambda x:x.age)
# print(ret.name)