Code



#
装饰器,让一个函数执行多少次 def xxx(counter): def outer(func): def inner(*args,**kwargs): a = [] for i in range(counter): data = func(*args,**kwargs) a.append(data) return a return inner return outer @xxx(5) def index(): pass resule = index() print(resule)


hashib模块应用,MD5
import hashlib
def get_md5(data):
    obj = hashlib.md5('JIOhfuefh3897,'.encode('utf-8'))#加盐
    obj.update(data.encode('utf-8'))#明文
    result = obj.hexdigest()#密文
    return result

fi = []
def zc():
    print("用户注册")
    user = input("请输入用户名:")
    pwd = input("请输入密码:")
    temp = {"username":user,"password":get_md5(pwd)}
    fi.append(temp)

def login():
    print("用户登陆")
    user = input("请输入用户:")
    pwd = input("请输入密码:")
    for item in fi:
        if item['username' ] == user and item['password'] == get_md5(pwd):
            return True
zc()
result = login()
if result:
    print("登陆成功")
else:
    print("登陆失败,请重新输入")


面试题,ip转进制,每个十进制转换成二进制,00000.。。。的十进制值

ip = "192.168.12.179"
ip_list = ip.split('.')
res = []
def i_list(ipl):
    for item in ipl:
        res.append(bin(int(item)))
i_list(ip_list)
print(res)
r = []
for item in res:
    data =item.lstrip('0b')
    if len(data) < 8:
        data = data.rjust(8,'0')
    r.append(data)
a = (''.join(r))
print(a)
c = int(a,base=2)
print(c)


分10页      #divmo()的应用,取两数的商和余数
z = []
for item in range(505):
    temp = {'name':'zcy%s'%item}
    z.append(temp)
page = int(input("输入页数:"))
total_page = 505
fy = 10
totalfy,fyds = divmod(total_page,fy)
if fyds > 0:
    totalfy += 1
start = (page-1) * 10
end = (page) * 10
if page < 0 or page >totalfy:
    print("页数错误,应当1——%s页"%totalfy)
else:
    data = z[start:end]
    for i in data:
        print(i)


 1 paramikol连接Linux
 2 import paramiko
 3 #创建实例对象
 4 ssh = paramiko.SSHClient()
 5 #调用方法,标识没有远程机器的公钥,允许访问(允许连接不在know_hosts文件中的主机)
 6 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
 7 #连接远程主机 地址端口用户密码
 8 ssh.connect('192.168.137.174',22,'root','123')
 9 
10 while True:
11     inputs = input("[root@localhost~]#")
12     stdin,stdout,stder=ssh.exec_command(inputs)#执行命令,返回的结果又3种
13     '''linux用命令安装软件的时候,会询问y/n,这个stdin就是用来接收输入y还是n | 
14     stuout命令执行后的结果,是一个管道,需要用read函数读取 | stderr执行错误信息'''
15     OUT=stdout.readlines()
16     for i in OUT:
17         print(i)
18 ssh.close()
19 
20 # pip uninstall cryptography==2.5
21 # pip install cryptography==2.4.2

 1 #猜数字游戏2019-05-28
 2 import random
 3 count = 0
 4 while count < 3:
 5     n = random.randint(1,10)
 6     num = int(input('please number:'))
 7     if num == n:
 8         print("You guuesed it")
 9         break
10     elif num > n:
11         print('try small..')
12     elif num < n:
13         print('try bigger')
14     count += 1
15     if count == 3:
16         answer = input('Do you want to continue?')
17         if answer == 'Y' or answer == 'y':
18             count = 0
19         elif answer == 'N' or answer == 'n':
20             break
21         else:
22             break

有如下文件,请通过分页的形式将数据展示出来。【文件非常大】
def big_file():
    total_count = 0
    for index, line in enumerate(open(r'goods', 'rb')):
        total_count += 1
    per_page_count = 10
    max_page_num, a = divmod(total_count, per_page_count)
    if a > 0:
        max_page_num += 1
    while True:
        print('
共计%s页'%(max_page_num))
        pager = int(input('要查看第几页:'))
        if pager < 1 or pager > max_page_num:
            print('页码不合法,必须是 1 ~ %s' % max_page_num)
        else:
            start = (pager - 1) * per_page_count
            end = pager * per_page_count
            for index, line in enumerate(open(r'goods', 'rb')):
                if index >= start and index < end:
                    print(line.decode(encoding='utf-8'),end="")
#斐波那契
def func(max_range):
    result = [1,1]
    while True:
        val = result[-1] + result[-2]
        if val > max_range:
            break
        result.append(val)
    return result
print(func(222))


from datetime import datetime
def regiester():
'''
用户注册
:return:
'''
print("用户注册")
while True:
user = input("输入注册用户名(N退出):")
if user.lower() == 'n':
break
pwd = input("输入秘密:")
ctime = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
user_info = {"user": user, "pwd": pwd, "time":ctime}
User_info = "%s|%s|%s "%(user,pwd,ctime)
with open('db.txt',mode='a',encoding='utf-8') as f:
data = f.write(User_info)
with open('db.txt',mode='r',encoding='utf-8') as f:
data = f.read()
Data = [i.strip() for i in data if i.strip()]
if user in Data:
print("用户已存在")
continue

def login():
while True:
print("用户登陆")
user = input("用户名:")
pwd = input("密码:")
user_exists = False
flag = False
with open('db.txt',mode='r',encoding='utf-8') as f:
for line in f:
username,password,ctime = line.split('|')
if username == user:
user_exists = True
if username == user and password == pwd:
flag = True
print("登陆成功")
if not user_exists:
print("用户不存在")
continue
if not flag:
print("用户名或密码错误")

def run():
run_info = {'1': regiester, '2': login}
while True:
print("1,用户注册 2,用户登陆")
choice = input("请选择 1 and 2:")
run_func = run_info.get(choice)
if not run_func:
print("输入错误")
continue
run_func()

if __name__ == '__main__':
run()
 
原文地址:https://www.cnblogs.com/nice777/p/10940006.html