PYTHON在linux下的安装:
View Code
View Code
View Code
View Code
View Code
Linux的yum依赖自带Python,为防止错误,此处更新其实就是再安装一个Python

查看默认Python版本
python -V
1、安装gcc,用于编译Python源码
yum install gcc
2、下载源码包,https://www.python.org/ftp/python/
3、解压并进入源码文件
4、编译安装
./configure
make all
make install
5、查看版本
/usr/local/bin/python2.7 -V
6、修改默认Python版本
mv /usr/bin/python /usr/bin/python2.6
ln -s /usr/local/bin/python2.7 /usr/bin/python
7、防止yum执行异常,修改yum使用的Python版本
vi /usr/bin/yum
将头部 #!/usr/bin/python 修改为 #!/usr/bin/python2.6
通过 getpass 隐藏用户密码:

通过 getpass 隐藏用户密码,此操作只能在命令行中执行,pycharm并支持此操作
C:\Users\Administrator>python3
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import getpass
>>> password=getpass.getpass("please input your passord :")
please input your passord : #在此处输入密码test,由于导入了getpass模块,并不显示用户输入的密码
>>> print(password)
test
>>>
编写登陆接口
基础需求:
- 让用户输入用户名密码
- 认证成功后显示欢迎信息
- 输错三次后退出程序

dic={
'user1':{'password':'123','count':0},
'user2':{'password':'123','count':0},
'user3':{'password':'123','count':0}
}
count=0
while True:
username = input('请输入用户名:')
if username not in dic:
print("用户名不存在")
continue
if dic[username]['count'] >=3:
print("密码尝试次数过多,用户名已锁定,请确认用户名密码是否正确或者用其他用户登录")
continue
userpass = input("请输入密码 :")
if userpass == dic[username]["password"]:
print("登陆成功")
break
elif userpass !=dic[username]["password"]:
print("密码错误,请重新输入")
dic[username]['count'] += 1
continue
升级需求:
- 可以支持多个用户登录 (提示,通过列表存多个账户信息)
- 用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)

dic={'user1':{'passwd':'123','count':0},
'user2':{'passwd':'123','count':0},
'user3':{'passwd':'123','count':0},
'user4':{'passwd':'123','count':0}
}
count=0
while True:
username=input('请入用户名 :')
if username not in dic:
print("用户 %s 不存在" %(username))
continue
with open('user.txt', 'r', encoding='utf-8') as f:
lock_user = (f.read().split('|'))
if username in lock_user:
print("用户 %s 已锁定" %(username))
break
if dic[username]['count'] >= 3:
with open('user.txt','a') as f:
f.write(username+'|')
print("用户 %s 已锁定" % (username))
break
password=input("请输入密码 ")
if password==dic[username]['passwd']:
print("登陆成功 %s 欢迎回来" %username)
break
if password !=dic[username]['passwd']:
print('密码错误,请重新输入')
dic[username]['count']+=1
continue
猜年龄游戏升级版
要求:
- 允许用户最多尝试3次
- 每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y, 就继续让其猜3次,以此往复,如果回答N或n,就退出程序
- 如何猜对了,就直接退出

correct_answer=30
count=0
input_list=['Y','y','N','n']
while True:
guess_age=int(input('请输入年龄: '))
if guess_age==correct_answer:
print("恭喜你,答对了")
break
else:
count+=1
if count > 2:
confirm = input("请输入Y或者y继续,输入N或者n退出(输入其他值,游戏结束):")
if confirm not in input_list:
break
if confirm=='y' or confirm=='Y':
count=0
continue
elif confirm=='n' or confirm=='N':
break
来源:https://www.cnblogs.com/dbkeeper/p/7129247.html
