python编辑中很多地方都可以用到while true,比如用户登录,while true是一个无限循环,只有在循环内适用break才能跳出循环。
我使用编写了一个登录判断
# -*- coding: utf-8 -*-
d = {'admin': 'admin', 'test': 'test', 'xss': '123456'}
count=5
while True:
name = raw_input('请输入账户用户名:')
if name in d:
break
else:
print ('用户名不正确,请重新输入')
while count:
password = raw_input('请输入密码:')
if d[name] == password:
print ('密码正确')
break
else:
count -= 1
print ('输入密码错误你还有{}次输入机会'.format(count))
1.# -*- coding: utf-8 -*-
python文件当中是不支持中文的,即使你输入的注释是中文也不行,如果不输入而代码中有中文就会有下面的报错:
SyntaxError: Non-ASCII character '\xe8' in file
为了解决这个问题,就需要把文件编码类型改为UTF-8的类型,输入这个代码就可以让PY源文件里面有中文了。
raw_input() 获得是一个字符串(string)类型的变量而
input() 获得的是一个数值类型的变量
如果利用不规范,在上面代码中密码比较时使用input()会报下面的错:
File "<string>", line 1, in <module>
format()函数用法
Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能。
基本语法是通过 {} 和 : 来代替以前的 % 。
format 函数可以接受不限个参数,位置可以不按顺序。
实列:
print ("{} {}".format("hello", "world")) hello world print ("{0} {1}".format("hello", "world")) hello world print ("{1} {0}".format("hello", "world")) world hello