博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 初体验
阅读量:7291 次
发布时间:2019-06-30

本文共 2695 字,大约阅读时间需要 8 分钟。

广告:欢迎大家到 学习 Python~

很喜欢 Python “薪”时代 这个词~

所以我们要拥抱 “人工智能”
拥抱 “Python~”

前提:下载 ,如果是 Mac 电脑会自带 Python。

Hello World!

Mac 电脑打开终端输入:

cd desktoptouch hello.pyvim hello.py使用 'i' 输入print('Hello World')输入 :wq 退出python3 hello.py

然后我们会在终端看到:Hello World!

恭喜你,这就是使用 Python 写的第一行代码!

用户登录

当我们完成 Hello World 之后,会发现这太简单了,那么我们肯定要继续学习,例如:语法、数据类型、字符编码、循环、函数等等。。

下面先看一下用户登录程序需求:

基础需求:

让用户输入用户名密码
认证成功后显示欢迎信息
输错三次后退出程序

升级需求:

可以支持多个用户登录 (提示,通过列表存多个账户信息)
用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)

分析:

1.既然是登录,肯定分登录成功和登录失败,即“判断”,所以我想到了 if else;
2.输错3次后退出,可以考虑 for 循环;
3.账户信息的列表或者文件中肯定有很多用户信息,所以要遍历出来分别和用户输入的 username 对比,还有锁定账户名单中的信息也要遍历出来对比,这里少不了使用 for 循环;
4.锁定的用户存到文件里,需要读取文件,文件写入等;
5.说到文件,我们还需要一个本地的文件 lock_userinfo.txt 来存储锁定用户信息;

逻辑

输入用户名,检查是否被锁定?

如果锁定,提示:已锁定如果未锁定,输入密码    读取用户信息文件,判断用户名是否存在?        如果不存在,提示:请注册        如果存在,判断密码是否正确?            如果正确,提示:success            如果不正确,提示:wrong                密码不正确的话继续输入密码,判断是否正确?                    正确的话,提示:success                    不正确的话,记录次数                    当次数到3次时,提示用户:lock                    并且把用户名存入 lock_userinfo.txt 文件

代码

# 输入用户名username = input('username: ')# 判断用户名是否被锁定lock_users = open('lock_userinfo.txt', 'r')for item in lock_users:    lock_user = item.strip()    if username == lock_user:        print('You have been locked!')        breaklock_users.close()# 如果没有被锁定if username != lock_user:    password = input('password: ')    with open('userinfo.txt') as users:        for account in users:            acc_user = account.strip().split(':')[0]            acc_pwd = account.strip().split(':')[1]            if username == acc_user:                if password == acc_pwd:                    print('Welcome back,', username, '~')                    break                else:                    print('Wrong password!')                    for i in range(0, 2):                        i = i + 1                        password = input('password: ')                        if password == acc_pwd:                            print('Welcome back,', username, '~')                            break                        else:                            print('Wrong password!')                    if i == 2:                        print('Sorry, you do not have a chance!')                        lock_write = open('lock_userinfo.txt', 'a+')                        lock_write.write('\n')                        lock_write.write(username)                        lock_write.close()        if username != acc_user:            print('Plase sign up!')print('------ end ------')

文件目录

根目录下有3个文件:
login.py => python 代码
userinfo.txt => 存放用户信息
lock_userinfo.txt => 存放锁定的用户信息

userinfo.txt

admin:123Bob:123Helen:123

lock_userinfo.txt

Bob

最后送上一句话:纸上得来终觉浅,绝知此事要躬行~

转载地址:http://lxcjm.baihongyu.com/

你可能感兴趣的文章
如何将 Linux 命令的输出赋值给变量
查看>>
《Puppet实战手册》——2.12 使用正则表达式进行替换
查看>>
《C++ Primer Plus(第6版)中文版》——1.4 程序创建的技巧
查看>>
《Java程序员面试秘笈》—— 面试题13 Java开发原则
查看>>
Oracle官方并发教程之Executor接口
查看>>
Python正则表达式指南
查看>>
DevOps转型的柳暗花明:开发运维一体化PaaS平台建设
查看>>
使用阿里云容器服务Jenkins实现持续集成之GitLab篇
查看>>
京东2017校园招聘笔试真题(希尔排序)
查看>>
Docker网络深度解读
查看>>
C语言OJ项目参考(1052)两个字符串连接
查看>>
Ckeditor一种很方便的文本编辑器
查看>>
阿里智能物联安全白皮书正式发布
查看>>
org.hibernate.hql.ast.QuerySyntaxException: buyer is not mapped
查看>>
三个月达到百万日活,梨视频如何借助云计算做最好看的资讯短视频?
查看>>
WCF调试异常信息:ServiceHost 仅支持类服务类型
查看>>
【转】java枚举使用详解
查看>>
使用JDK自带的WebService
查看>>
智捷公开课马上开始了-欢迎大家一起讨论学习-第一系列读《Swift开发指南(修订版) 》看Swift视频教程...
查看>>
C# 使用Log4Net记录日志(基础篇)
查看>>