前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python 初体验

Python 初体验

作者头像
py3study
发布2020-01-06 15:29:03
3650
发布2020-01-06 15:29:03
举报
文章被收录于专栏:python3python3

很喜欢 Python “薪”时代 这个词~ 所以我们要拥抱 “人工智能”~ 拥抱 “Python~”

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

Hello World!

Mac 电脑打开终端输入:

代码语言:javascript
复制
cd desktop
touch hello.py
vim 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 来存储锁定用户信息;

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

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

代码

代码语言:javascript
复制
# 输入用户名
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!')
        break
lock_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

代码语言:javascript
复制
admin:123
Bob:123
Helen:123

lock_userinfo.txt

代码语言:javascript
复制
Bob

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

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-10-08 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Hello World!
  • 用户登录
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档