对文件的增删改查 以及 ---三次登陆

文件

global
        log 127.0.0.1 local2
        daemon
        maxconn 256
        log 127.0.0.1 local2 info
defaults
        log global
        mode http
        timeout connect 5000ms
        timeout client 50000ms
        timeout server 50000ms
        option  dontlognull

listen stats :8888
        stats enable
        stats uri       /admin
        stats auth      admin:1234

frontend oldboy.org
        bind 0.0.0.0:80
        option httplog
        option httpclose
        option  forwardfor
        log global
        acl www hdr_reg(host) -i www.oldboy.org
        use_backend www.oldboy.org if www

backend wwww.baidu.com
        server 1.1 weight 666666 maxconn 2.2.2.2.2
        server 5555555 weight 20 maxconn 3000
        server 88 weight 88 maxconn 88
        server 6.6.6 5.5.5 weight 11 maxconn 88.88
        server 666.22 weight 9999 maxconn 8.8.8
        server 7.7.7.7.7 1.1.1.1.1.1 weight 1.4.5.6.2 1 maxconn 4.4.1000000
        server 11111 weight 11111 maxconn 11111
        server 55.55 55.22 weight 20 maxconn 3000
backend www.oldboy2.org
        server 3.3.3.3 3.3.3.3 weight 20 maxconn 3000
backend www.oldboy20.org
        server 10.10.0.10 10.10.0.10 weight 9999 maxconn 33333333333

运行的文件

代码

import os

def search(old_Value):
    print(‘查看选中的内容‘)
    print(‘server %s weight %s maxconn %s‘ % (old_Value[‘record‘][‘server‘],
                                              old_Value[‘record‘][‘weight‘],
                                              old_Value[‘record‘][‘maxconn‘]))
def change(f_write,New_Value1):
    print(‘修改成功‘)
    f_write.write(New_Value1)
def delete():
    print(‘成功删除‘)
def upadd(f_write,New_Value1):
    print(‘添加成功‘)
    f_write.write(New_Value1)

def upadd_del_change(old_Value,New_Value1):
    flag = False
    with open(‘haproxy.conf‘,‘r‘,encoding=‘utf-8‘) as f_read,        open(‘haproxy_test.conf‘,‘w+‘,encoding=‘utf-8‘) as f_write:
            for i in f_read:
                if i.startswith(‘backend‘) and old_Value[‘backend‘] in i:
                    flag = True
                if old_Value[‘record‘][‘server‘] in i and                         old_Value[‘record‘][‘weight‘] in i and                         old_Value[‘record‘][‘maxconn‘] in i and flag:
                    flag =  False
                    num_input = int(input(‘请输入(1(添加) or 2(删除) or 3(修改)or 4(查看)):‘).strip())
                    if num_input == 1:
                        upadd(f_write, New_Value1)
                    if num_input == 2:
                        delete()
                        continue
                    if num_input == 3:
                        change(f_write, New_Value1)
                        continue
                    if num_input == 4:
                        search(old_Value)
                f_write.write(i)
    os.rename(‘haproxy.conf‘,‘haproxy1.conf‘)
    os.rename(‘haproxy_test.conf‘,‘haproxy.conf‘)
    os.remove(‘haproxy1.conf‘)

if __name__ == ‘__main__‘:
    while True:
        #{‘backend‘:‘wwww.baidu.com‘,‘record‘:{‘server‘:‘5555555‘,‘weight‘:‘20‘,‘maxconn‘:‘3000‘}}
        old_Value = eval(input(‘Please enter the old value:‘))
        New_Value = eval(input(‘Please enter a new value:‘))
        New_Value1 = (‘\t\tserver %s weight %s maxconn %s\n‘ % (New_Value[‘record‘][‘server‘],
                                                                New_Value[‘record‘][‘weight‘],
                                                                New_Value[‘record‘][‘maxconn‘]))
        upadd_del_change(old_Value, New_Value1)

增删改查

三次登陆

#!/usr/bin/python
# -*- coding: UTF-8 -*-
#名单文件:username
#黑名单文件:lock
‘‘‘
1.先打开文件,
2.创建杂货,
3.对文件进行操作
4.进行循环
5.输入用户名进行判断,
    (1).用户名是否存在
        (1).存在的话就退出本次循环
    (2)不在的话,
        (1)进行验证,
            (1)验证成功的。
            (2)不成功
                (1)不成功的在进行验证,
                    (1)在定义的字典中,是否存在了,存在的次数不超过3次就进行自加
                    (2)不在定义的字典中,将用户名添加进去,
        (2)用户不存在的
            (1)提示用户不存在,返回

‘‘‘
f_read = open(‘username‘)
f_write = open(‘lock‘,‘a+‘,encoding=‘utf-8‘)
flag = True
dic_list = {}
count = 0
while flag and count < 3:
    user = input(‘输入用户名:‘)
    pwd = input(‘输入密码:‘)
    f_read.seek(0)
    f_write.seek(0)
    for i in f_write:
        if user == i:
            print(‘用户名已经锁定了!找管理人员给你解锁.....‘)
            break
    else:
        for i in f_read:
            username,pwds = i.strip().split(‘ ‘)
            if username ==user :
                if pwds == pwd :
                    print(‘login 成功!‘)
                    flag = False
                    break
                else:
                    if username in dic_list:
                        dic_list[username] += 1
                    else:
                        dic_list[username] = 1
                        print(‘你输入的用户或密码错误‘)
                        count = 1
        else:
            if count == 0:
                print("你输入的用户不存在.....")
        for i in dic_list:
            if dic_list[i] == 3:
                count = 3
                break
if flag:
    print(‘该用户密码输入三次错误,已被锁定,请联系管理员‘)
    f_write.write(user)
f_read.close()
f_write.close()

三次登陆

时间: 2024-12-17 10:10:36

对文件的增删改查 以及 ---三次登陆的相关文章

文件的增删改查

有以下员工信息表 当然此表你在文件存储时可以这样表示 1 1,Alex Li,22,13651054608,IT,2013-04-01 现需要对这个员工信息文件,实现增删改查操作 可进行模糊查询,语法至少支持下面3种: select name,age from staff_table where age > 22 select  * from staff_table where dept = "IT" select  * from staff_table where enroll

abp(net core)+easyui+efcore实现仓储管理系统——ABP WebAPI与EasyUI结合增删改查之六(三十二)

abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+easyui+efcore实现仓储管理系统——解决方案介绍(二) abp(net core)+easyui+efcore实现仓储管理系统——领域层创建实体(三) abp(net core)+easyui+efcore实现仓储管理系统——定义仓储并实现 (四) abp(net core)+easyui

MyBatis学习(二)、SQL语句映射文件(2)增删改查、参数、缓存

二.SQL语句映射文件(2)增删改查.参数.缓存 2.2 select 一个select 元素非常简单.例如: Xml代码   <!-- 查询学生,根据id --> <select id="getStudent" parameterType="String" resultMap="studentResultMap"> SELECT ST.STUDENT_ID, ST.STUDENT_NAME, ST.STUDENT_SEX

Python基础-----实现文件的增删改查

实现文件的增删改查 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 import os 4 def file_handler(backend_data,res = None,type = 'fetch'): #文件处理函数 5 if type == 'fetch': #查询操作 6 with open('haproxy.conf','r') as read_f: 7 tag = False #初始状态标识 8 ret = [] #用于放置查询

对*.ini文件的增删改查

文件的格式有很多种 *.ini 一般是带一个齿轮的配置文件,这个文件的操作有专门的类库进行处理不行自己硬编码      ini4j.jar 这个jar包专门封装了处理*.ini文件的方法. 1 public interface IParaManager { 2 public int getKey(String section, String key, CInt value); 3 public int getkey(String section, String key, CString valu

Day5.对文件的增删改查+三次登陆后锁定

作业1:对文件haproxy.conf进行增删改查: haproxy.conf原文件内容如下: global log 127.0.0.1 local2 daemon maxconn 256 log 127.0.0.1 local2 info defaults log global mode http timeout connect 5000ms timeout client 50000ms timeout server 50000ms option dontlognull listen stat

Python 模拟SQL对文件进行增删改查

1 #!/usr/bin/env python 2 # _*_ coding:UTF-8 _*_ 3 # __auth__: Dalhhin 4 # Python 3.5.2,Pycharm 2016.3.2 5 # 2017/05/15 6 7 import sys,os 8 9 def where(dbfile,where_list): #条件是一个list 10 11 def and_or_where(sub_where_list): 12 '''获取and或同时含有and.or关键字的条

通用DAO之MyBatis封装,封装通用的增删改查(三)

曾将发布过俩篇关于Mybatis封装的文章,当时曾曾承诺过当测试没有问题后阿海会整理一下然后将原代码发布出来. 那么今天正好朋友找我要一份那套mybatis封装的源码,我便整理了一份,想想这么长时间了并没有发现什么明显的bug,于是决定将它发出来. 喜欢的朋友可以在这里下载: http://aiyiupload.oss-cn-beijing.aliyuncs.com/blog/img/2016/06/28/15/6d69ad50-ab53-4f4f-b4e7-1fed010bfdb9.rar 关

上手spring boot项目(三)之spring boot整合mybatis进行增删改查的三种方式。

1.引入依赖 <!--springboot的web起步依赖--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency> <!-- Mybatis起步依赖 --> <dependency> <groupId>o