python实例-python案例-用户登录

copycode.gif

1 #!/usr/bin/env python

2 # -*- coding:utf-8 -*-

3

4 """

5 用户登陆功能实例

6 1、获取db文件中所有的用户信息

7 2、比较用户信息

8 如果用户名不存在,则直接退出

9 如果用户名存在

10 检测密码,如果密码存在,则提示登陆成功,并将登陆错误次数重置为 0 ,修改内存中的字典中记录的登陆错误次数。(并写入文件)

11 如果密码不存在

12 修改内存中的字典中记录的登陆错误次数

13

14 将最新的登陆错误次数和对应用户信息写入文件

15

16 """

17

18

19 # 读取用户信息到 user_info_list 中

20 read = file("db","r")

21 user_info_list = read.readlines()

22 read.close()

23

24 # 处理 user_info_list,以便之后的用户名和密码比较

25 # 处理后的结果: user_info_dict = {"alex": {"pwd": "112233", "times": 0}, "eric": {"pwd": "111111", "times": 0}}

26 user_info_dict = {}

27 for item in user_info_list:

28 user_info = item.split("|")

29 user_info_dict[user_info[0]] = {"pwd": user_info[1], "times": int(user_info[2].strip())}

30

31 while True:

32 username = raw_input("请输入用户名:")

33 # 用户名不存在

34 if username not in user_info_dict.keys():

35 print "用户名不存在,请重新输入!"

36 # 用户名存在

37 else:

38 # 判断登陆次数

39 if user_info_dict[username]["times"] > 3:

40 print "账户已经冻结,请联系管理员!"

41 break

42 else:

43 pwd = raw_input("请输入密码:")

44 if user_info_dict[username]["pwd"] == pwd:

45 # 如果登陆成功,将登陆次数重置为 0

46 user_info_dict[username]["times"] = 0

47 print "恭喜您 %s,登陆成功" % username

48 else:

49 # 如果登陆失败,将登陆次数加一

50 user_info_dict[username]["times"] += 1

51

52 # 将最新的登陆次数写入文件

53 temp_list = []

54 for key, value in user_info_dict.items():

55 temp = "%s|%s|%d" % (key, value["pwd"], value["times"])

56 temp_list.append(temp)

57 temp_str = " ".join(temp_list)

58 w_obj = file("db", "w")

59 w_obj.write(temp_str)

60 w_obj.flush()

61 w_obj.close()

copycode.gif

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个简单的逻辑回归分类的 Python 实例。 首先,我们需要导入必要的库和数据集。在这个例子中,我们使用了 scikit-learn 库中的鸢尾花数据集。 ```python from sklearn import datasets import numpy as np # 导入鸢尾花数据集 iris = datasets.load_iris() # 只使用前两个特征:花萼长度和花萼宽度 X = iris.data[:, :2] y = (iris.target != 0) * 1 ``` 接下来,我们将数据集拆分为训练集和测试集。 ```python # 将数据集拆分为训练集和测试集 train_X, train_y = X[:80], y[:80] test_X, test_y = X[80:], y[80:] ``` 然后,我们可以使用 scikit-learn 库中的 LogisticRegression 类来建立逻辑回归模型。 ```python from sklearn.linear_model import LogisticRegression # 创建一个逻辑回归模型 clf = LogisticRegression() # 在训练集上拟合模型 clf.fit(train_X, train_y) ``` 接着,我们可以使用训练好的模型来进行预测。 ```python # 在测试集上进行预测 pred_y = clf.predict(test_X) ``` 最后,我们可以使用 scikit-learn 库中的 metrics 模块来评估模型的性能。 ```python from sklearn import metrics # 计算模型的准确率、精度和召回率 print("Accuracy:", metrics.accuracy_score(test_y, pred_y)) print("Precision:", metrics.precision_score(test_y, pred_y)) print("Recall:", metrics.recall_score(test_y, pred_y)) ``` 完整代码如下: ```python from sklearn import datasets from sklearn.linear_model import LogisticRegression from sklearn import metrics import numpy as np # 导入鸢尾花数据集 iris = datasets.load_iris() # 只使用前两个特征:花萼长度和花萼宽度 X = iris.data[:, :2] y = (iris.target != 0) * 1 # 将数据集拆分为训练集和测试集 train_X, train_y = X[:80], y[:80] test_X, test_y = X[80:], y[80:] # 创建一个逻辑回归模型 clf = LogisticRegression() # 在训练集上拟合模型 clf.fit(train_X, train_y) # 在测试集上进行预测 pred_y = clf.predict(test_X) # 计算模型的准确率、精度和召回率 print("Accuracy:", metrics.accuracy_score(test_y, pred_y)) print("Precision:", metrics.precision_score(test_y, pred_y)) print("Recall:", metrics.recall_score(test_y, pred_y)) ``` 这就是一个简单的逻辑回归分类的 Python 实例

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值