Python---进阶---常用模块os、jso
一、写一个6位随机验证码程序(使用 random模块),要求验证码中至少包含一个数字、一个小写字母、一个大写字母
import string
code.append(random.choice(string.ascii_uppercase)) # 保证验证码中有一个大写字母
code.append(random.choice(string.digits)) # 保证验证码中有一个数字
code.append(random.choice(string.ascii_lowercase+string.ascii_uppercase+string.digits))
print(code)
print(q_code)
---------------------------------------
二、写一个用户登录验证程序,文件如下1234.json
1234.json
{"expire_date":"2021-01-01","id":"1234","status":0, "pay_day":22, "password":"abc"}
- 用户名为json的文件名
- 判断是否过期,与expire_date做比较
- 登陆成功后打印登陆成功,三次登陆失败,status值改为1,并且锁定账号
-----------------------------------------------------------------
import time
import json
user = input("请输入用户名:")
f = user.strip()+'.json'
if os.path.exists(f):
fp = open(f, "r+", encoding="utf-8")
j_user = json.load(fp)
if j_user['status'] == 1:
print("账号已经锁定")
break
else:
expire_date = j_user['expire_date']
current_st = time.time()
expire_st = time.mktime(time.striptime(expire_dt, "%Y-%m-%d"))
if current_st > expire_st:
print("用户已经过期")
break
else:
while count < 3:
pwd = input("请输入密码: ")
if pwd.strip() == j_user['passwd']:
print("登陆成功")
exit_flag = True
break
else:
if count == 2:
print("用户登录已经超过3次,锁定账号")
j_user['status'] = 1
fp.seek(0)
fp.truncate() # 清空文件内容
json.dump(j_user, fp)
count += 1
if exit_flag:
break
else:
print("用户不存在")
count += 1
Python---进阶---常用模块os、jso的更多相关文章
- Python进阶--常用模块
一.模块.包 什么是模块? 模块实质上就是一个python文件,它是用来组织代码的,意思就是说把python代码写到里面,文件名就是模块的名称,test.py test就是模块名称. 什么是包? 包, ...
- Python基础-常用模块OS
模块:一个python文件就是一个模块,模块分三种: 1,标准模块,也就是python自带的模块,例如import time,random,string等等 2,第三方模块,这种模块需要自己安装才能 ...
- python的常用模块之collections模块
python的常用模块之collections模块 python全栈开发,模块,collections 认识模块 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文 ...
- Python进阶----pymysql模块的使用,单表查询
Python进阶----pymysql模块的使用,单表查询 一丶使用pymysql 1.下载pymysql包: pip3 install pymysql 2.编写代码 ...
- Python进阶(八)----模块,import , from import 和 `__name__`的使用
Python进阶(八)----模块,import , from import 和 __name__的使用 一丶模块的初识 #### 什么是模块: # 模块就是一个py文件(这个模块存放很多相似的功能, ...
- python - 常用模块 os, sys
常用模块: os(处理文件和目录), sys(sys 模块包含了与 Python 解释器和它的环境有关的函数.) sys.argv 变量是一个字符串的 列表.特别地,sys.argv 包含了 命令行参 ...
- python之常用模块一(time、random、os、sys)
摘要:时间模块time .随机模块random .os模块.sys模块 一.时间模块 三种格式 时间戳时间:浮点数 单位为秒 时间戳起始时间: 1970.1.1 0:0:0 英国伦敦时间 1970.1 ...
- Python之常用模块(re,时间,random,os,sys,序列化模块)(Day20)
一.时间模块 #常用方法 1.time.sleep(secs) (线程)推迟指定的时间运行.单位为秒. 2.time.time() 获取当前时间戳 在Python中表示时间的三种方式:时间戳,元组(s ...
- [Python Day5] 常用模块
目录: 1.模块介绍 2.time & datetime 3.random 4.OS 5.sys 6.shutil 7.json & pickle 8.shelve 9.xml 处理 ...
- Python之路-python(常用模块学习)
模块介绍 time &datetime模块 random os sys shutil shelve xml处理 yaml处理 configparser hashlib re正则表达式 1.模块 ...
随机推荐
- JS去重-删除连续重复的值
function removeRepetition(str) { var result = "", unStr; for(var i=0,len=str.length;i<l ...
- Vue知识整理10:条件渲染(v-if v-show)
在Vue中使用v-if等条件实现条件的判断来实现对象的显示. 也可以采用 v-show条件来实现对象的显示.
- 查看dll中的函数(方法)
https://jingyan.baidu.com/article/5553fa82b953b365a23934b7.html 查看dll中的函数(方法) 听语音 | 浏览:2004 | 更新:201 ...
- flask如何实现https以及自定义证书的制作
http://blog.csdn.net/yannanxiu/article/details/70672744 http://blog.csdn.net/yannanxiu/article/detai ...
- Matlab——表达式 阵列与矩阵的创建
表达式 指令过长: 如果一个指令过长可以在结尾加上... 下一行继续写指令即可 若不想每次都显示运算结果,只需在运算式最後加上分号(:)即可 注释 基本的算术运算有: 加 (+).减 (-).乘 (* ...
- 算法之美&数据结构与算法复习
1.归并两个有序链表(归并排序) 2.最小路径和--BP解法 3.计算int sqrt(x)--二分解法 4.趣味面试题 5.跳步游戏(Jump_Game)--后向回溯算法 6.Excel列号转十进制 ...
- Linux setup
Install centos 7: Config Network a config example in /etc/sysconfig/network-scripts/ifcfg-ens160 TYP ...
- 【Linux-设备树】编译器DTC
DTC编译器:设备树源码DTS文件编译为二进制文件DTB. DTC编译器的作用:就是对设备树的源码的文件进行语法检查,根据linux的内核要求检查各个节点以及属性,将设备树源码编译生成二进制文件,以保 ...
- [转帖]Twitter 宣布抛弃 Mesos,全面转向 Kubernetes
Twitter 宣布抛弃 Mesos,全面转向 Kubernetes http://www.itpub.net/2019/05/06/1788/ 事实标准了. 作者 | 阿里云智能高级技术专家 张 ...
- IF条件控制
条件控制 定义 Python 条件语句是通过一条或多条语句的执行结果(True 或者 False)来决定执行的代码块. 如下图所示 IF语句 if condition_1: statement_blo ...