python入门作业day04 基本数据类型应用

# 作业思路:如何选择合适的类型来记录状态???
# 1、选取的类型是否可以明确标识事物的状态
# 2、存不是目的,存的目的是为了日后取出来用,并且方便的用
# 3、把自己想象成一台计算机,如果我是计算机,
# 我会如何以何种形式把事物的状态记到脑子里
# 然后再去python中找相应的数据类型来让计算机像自己一样去记下事物的状态
# ps:认真读题,需要自己从题目中分析出应该存储的状态,然后选择合适的类型加以存储

# 1、病毒程序需要定期将监控到的数据写入日志文件,请记录下日志文件路径C:acadhsvc.dll.system32,方便后期处理
# 答:使用字符串类型str
# log_path = r'C:acadhsvc.dll.system32'
# 或log_path = 'C:\a\b\c\adhsvc.dll.system32'
# mac可以log_path = 'C:/a/b/c/adhsvc.dll.system32'

# 2、病毒程序在上传文件时,发送的报头数据里需要包含文件信息:文件名a.txt、大小360,请记录下文件信息
# 答:使用字典类型key
# file_info = {'name': 'a.txt', 'size': 360}

# 3、程序运行过程中有一段错误日志需要记录下来,错误日志为"上传文件失败"
# 答:使用字符串类型str
# log_error = '上传文件失败'
# 4、假设我收到一条信息要记录,信息为中病毒客户端的信息"[2020-02-18-17:00:48] 癞蛤蟆病毒感染者-> 80.82.70.187:33649 正在上传数据"
# 答:使用列表list
# info = ['2020-02-18-17:00:48', '癞蛤蟆病毒感染者-> 80.82.70.187:33649', '正在上传数据']
# 5、把服务端ip地址存放下来,ip地址为10.0.10.11
# 答:使用字符串类型str
# ip_address = '10.0.10.11'

# 6、病毒程序需要每隔3秒才运行一次,请记录下这个时间间隔
# 答: 使用使用整数型int
# times = 3

# 二:嵌套取值操作
# 1、
请取出第一个学生的第一个爱好
students_info=[['egon',18,['play',]],['alex',18,['play','sleep']]]
print(students_info[0][2][0])
# 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、输入账号密码完成验证,验证通过后输出"登录成功"
# username = input('请输入用户名:')
# password = input('请输入密码:')
# if username == 'mac' and password == '123':
#     print('登陆成功')
# else:
#     print('用户名或密码错误')
# 2、可以登录不同的用户
# user_info = {
#     'egon': '123',
#     'tank': '321',
#     'mac': '111'
# }
# while True:
#     username = input('请输入用户名:')
#     if username in user_info:
#         print('%s用户存在' % username)
#         password = input('请输入密码:')
#         if password == user_info[username]:
#             print('登陆成功')
#             break
#         else:
#             print('用户名或密码错误')
#     else:
#         print('用户名不存在')

# 3、同一账号输错三次锁定(附加功能,在程序一直运行的情况下,一旦锁定,则锁定5分钟后自动解锁)
# 扩展需求:在3的基础上,完成用户一旦锁定,无论程序是否关闭,都锁定5分钟
# user_info = {
#     'egon': '123',
#     'tank': '321',
#     'mac': '111'
# }
# import time
# count = 0
# tag = True
# while tag:
#     username = input('请输入用户名:')
#     if username in user_info:
#         print('%s用户存在' % username)
#         while count < 3:
#             password = input('请输入用户密码:')
#             if password == user_info[username]:
#                 print('登陆成功')
#                 tag = False
#                 break
#             else:
#                 count += 1
#                 print('用户密码错误,剩余次数',3-count)
#         else:
#             print('用户被锁定,锁定时间5分钟')
#             time.sleep(300)
#             print('用户已解锁')
#             count = 0
#     else:
#         print('用户名不存在')

  

原文地址:https://www.cnblogs.com/liuxinging/p/13261586.html