"""
20200602
作业
"""
# 1、病毒程序需要定期将监控到的数据写入日志文件,请记录下日志文件路径C:acadhsvc.dll.system32,方便后期处理
# 把日志赋值给变量
log = r'C:acadhsvc.dll.system32'
# 2、病毒程序在上传文件时,发送的报头数据里需要包含文件信息:文件名a.txt、大小360,请记录下文件信息
# 文件名和大小赋值给变量
info = {'name':'a.txt', 'size':360}
# 3、程序运行过程中有一段错误日志需要记录下来,错误日志为"上传文件失败"
log_error = "上传文件失败"
# 4、假设我收到一条信息要记录,信息为中病毒客户端的信息"[2020-02-18-17:00:48]
# 癞蛤蟆病毒感染者-> 80.82.70.187:33649 正在上传数据"
customer_info = "[2020-02-18-17:00:48] 癞蛤蟆病毒感染者-> 80.82.70.187:33649 正在上传数据"
# 5、把服务端ip地址存放下来,ip地址为10.0.10.11
serve_ip = "10.0.10.11"
# 6、病毒程序需要每隔3秒才运行一次,请记录下这个时间间隔
import time
while True:
start_time = time.time()
print(int(start_time))
time.sleep(3)
stop_time = time.time()
# 选做题1:
# :嵌套取值操作
students_info = [['egon', 18, ['play']], ['alex', 18 ['play', 'sleep']]]
# 请取出第一个学生的第一个爱好
first_hobby = students_info[0][2][0]
print(first_hobby)
# 2、针对字典
info = {
'name': 'egon',
'hobbies': ['play','sleep'],
'company_info': {
'name': 'Oldboy',
'type': 'education',
'emp_num': 40,
}
}
# 请取出取公司名
print(info['company_info']['name'])
# 3、针对下述类型
students = [
{'name': 'alex', 'age': 38, 'hobbies': ['play', 'sleep']},
{'name': 'egon', 'age': 18, 'hobbies': ['read', 'sleep']},
{'name': 'wupeiqi', 'age': 58, 'hobbies': ['music', 'read', 'sleep']},
]
# 取第二个学生的第二个爱好
print(students[1]["hobbies"][1])
# 针对个别已经学了很多的同学,有如下选做题
# 选做题:编写用户登录接口(学的多的同学,尝试做下述作业,这是截止到下周二学完文件处理之后的作业)
# 1、输入账号密码完成验证,验证通过后输出"登录成功"
# 2、可以登录不同的用户
# 3、同一账号输错三次锁定(附加功能,在程序一直运行的情况下,一旦锁定,则锁定5分钟后自动解锁)
# 扩展需求:在3的基础上,完成用户一旦锁定,无论程序是否关闭,都锁定5分钟
# 1.输入账号密码完成验证, 验证通过后输出"登录成功" 验证登录账户从文档中提取
# 2.登录不成功
# 输入3次错误锁定
# 附加功能, 锁定5分钟
# 扩展: 用户一旦锁定,无论程序是否关闭,都锁定5分钟
'''
usr_pwd.txt 调用文件
'''
import time
count = 0
while count <= 3: # 定义循环3次 总数是4次
username = input('请输入您的账号').strip()
password = input('请输入您的密码').strip()
with open('usr_pwd.txt','r',encoding='utf-8') as f: # 从文件中读取账号密码
msg = f.read()
name, psswd = msg.split("|")
if name == username and psswd == password: # 判断登录
print('登录成功!')
break # 登录成功后退出循环
else:
print('账号或密码错误还有%s次机会,仍然错误将要被锁定!' % (3-count))
'''
登录不成功
输入3次错误锁定
附加功能, 锁定5分钟
扩展: 用户一旦锁定,无论程序是否关闭,都锁定5分钟
'''
if count == 3:
print('锁定5分钟')
start_time = time.time() # 起始时间
connt = 0
while connt <= 300:
time.sleep(1)
stop_time = time.time() # 结束时间
ret = stop_time - start_time # 时间差
print("结锁时间剩余%s" % (300 - int(ret)))
connt += 1
count += 1