python 作业一4-10

作业一:为程序加上测量运行时间的装饰器

 1 import time
 2 def timer(next):
 3     def wrapper(*args,**kwargs):
 4         start_time = time.time()
 5         next(*args,**kwargs)
 6         stop_time = time.time()
 7         print("run time in %s "%(stop_time - start_time))
 8
 9     return wrapper
10 @timer
11 def index():
12     time.sleep(1)
13     print("welcome ")
14
15 index()

作业二:利用装饰器和读写文件的方式控制用户登录

 1 def auth_type(auth_type):
 2     def auth(next):
 3         def wrapper(*args,**kwargs):
 4             if auth_type == ‘file‘:
 5                 lock = {}
 6                 flag =True
 7                 with open("username.txt") as f_user, open("locked.txt", "a+") as f_lock, open("f_logged", "a+") as f_logged:
 8                     while flag:
 9                         lock_count = 0
10                         f_lock.seek(0)
11                         f_user.seek(0)
12                         f_logged.seek(0)
13                         user_name = input("请输入你的帐号:")
14                         for logged_in in f_logged:
15                             if  user_name ==logged_in.strip():
16                                 print("登陆成功!")
17                                 return  next(*args,**kwargs)
18                         passwd = input("请输入你的密码:")
19                         for user_lock in f_lock:
20                             if user_lock.strip() == user_name:
21                                 print("此帐号已被锁定!")
22                                 lock_count = 1
23                                 break
24                         for user in f_user:
25                             user_f, passwd_f = user.strip().split("----")
26                             if user_f == user_name and lock_count == 0:
27                                 if passwd_f == passwd:
28                                     print("登陆成功!")
29                                     f_logged.write(user_name+‘\n‘)
30                                     return  next(*args,**kwargs)
31                                 else:
32                                     if user_name in lock:
33                                         lock[user_name] += 1
34                                     else:
35                                         lock[user_name] = 1
36                                         break
37                                     print("登录失败!")
38                             if user_name in lock and lock[user_name] >= 3:
39                                 print("错误次数过多,帐号锁定!")
40                                 f_lock.write(user_name + ‘\n‘)
41                                 lock.pop(user_name)
42                         print("登录失败! ")
43             elif auth_type == "sql":     print("峰哥还没教")
44         return wrapper
45     return auth
46 @auth_type(auth_type="file")
47 def index():
48     print("欢迎")
49
50 index()
时间: 2024-10-09 13:51:24

python 作业一4-10的相关文章

python作业:多级菜单

python作业: 要求: 1.三级菜单 2.选择可以依次进入子菜单 1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 #__author__ = 'Administrator' 4 5 data={ 6 'china':{ 7 'zhejiang':{ 8 '杭州', 9 '宁波', 10 '余姚', 11 '建德', 12 }, 13 'jiangxi':{ 14 '上饶', 15 '南昌', 16 '瑞金', 17 '德兴', 18 '广丰'

python 图像归一化作业代码代编程代写图python作业

python 图像归一化作业代码代编程代写图python作业from PIL import Image import os import sys import numpy as np import time from sklearn import svm # 获取指定路径下的所有 .png 文件 def get_file_list(path): return [os.path.join(path, f) for f in os.listdir(path) if f.endswith(".png&

Python代写,Python作业代写,代写Python,代做Python(微信leechanx)

Python代写,Python作业代写,代写Python,代做Python(微信leechanx) Redis:Cannot assign requested address的解决办法 客户端频繁的连服务器,由于每次连接都在很短的时间内结束,导致很多的TIME_WAIT,以至于用光了可用的端口号,所以新的连接没办法绑定端口,即"Cannot assign requestedaddress".是客户端的问题不是服务器端的问题.通过netstat,的确看到很多TIME_WAIT状态的连接.

代写Python、代做Python、Python作业代写、Python代写(微信leechanx)

代写Python.代做Python.Python作业代写.Python代写(微信leechanx) i++ VS ++i性能区别 i++ 为 function () { tmp = i; i = tmp + 1; return tmp; } ++i 为 function () { i = i + 1; return i; }

Python作业-选课系统

Python作业-选课系统 学习 python Python作业-选课系统 days6作业-选课系统: 1. 程序说明 2. 思路和程序限制 3. 选课系统程序目录结构 4. 测试帐户说明 5. 程序测试过程 days6作业-选课系统: 角色:学校.学员.课程.讲师 作业需求 1.创建北京.上海 2 所学校 2.创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开 3.课程包含,周期,价格,通过学校创建课程 4.通过学校创建班级, 班级关联课程.

Python代写,Python作业代写,代写Python,代做Python

Python代写,Python作业代写,代写Python,代做Python 我是一线IT企业程序员,目前接各种代码代写业务: 代写C语言.代做C语言.C语言作业代写.C语言代写 代写C++.代做C++.C++作业代写.C++作业代写 代写Python.代做Python.Python作业代写.Python作业代做 代写Java.代做Java.Java作业代写.Java作业代做 代写编程作业.代做编程.编程代写.编程代做 先写代码再给钱,不要任何定金!价钱公道,具体见图,诚信第一!(涉及图形化界面.

Python作业第一课

零基础开始学习,最近周边的同学们都在学习,我也来试试,嘿嘿,都写下来,下次不记得了还能来看看~~ Python作业第一课1)登陆,三次输入锁定,下次不允许登陆2)设计一个三级菜单,菜单内容可自行定义,任意一级输入q则退出程序,如果输入b则返回上一级 --以上两个题目涉及几个知识点:文档的读取,文档的写入,列表的操作,循环的使用,字符串的一些操作首先回顾一下这几个知识点a)文档的读取,几个常用的f = open("test.log","w")这个w是参数,可换成别的参

spark 集群运行python作业

今天尝试用刚搭建好的spark集群运行python作业,遇到了一些问题,解决了一些坑的同时也对spark集群的运作和配置方式有了一些比较浅的认识,不像之前那么没有概念了,记录如下,之后还要继续更多的对Hadoop生态圈和spark并行计算框架的探究. 首先说下环境,集群有五个节点,集群环境是用cloudera manager 搭建的,hadoop用的是cloudera的CDH,我对CDH和hadoop之间关系的理解就是与linux和CentOS的关系一样,其他的的相关组件例如Hbase和Hive

经典C语言程序设计100例 -- C 和 Python 版 (06 - 10)

[06]格式化输出 题目:用*号输出字母C的图案. 思路:可先用'*'号在纸上写出字母C,再分行输出.如果输出图形较大,且有规律可循,可考虑使用循环. C 语言代码 int main() { const char *p = " **** \n" " ** ** \n" "** \n" "** \n" "** \n" " ** ** \n" " **** \n"; pr

python(2.7.10) 安装后启动错误:IDLE's subprocess didn't make connection

问题:启动Python提示错误:IDLE's subprocess didn't make connection.Either IDLE can't start a subprocess or personal firewall software is blocking the connection . 原因: That usually means that your firewall is blocking IDLE, so  enable it in your firewall. If th