当前位置:首页 > 商讯 >

Python作业第一课

编辑:北京盛典时光文化传媒有限公司时间:2017-09-09 10:33:58阅读次数:2
Python作业第一课

零基础开始学习,最近周边的同学们都在学习,我也来试试,嘿嘿,都写下来,下次不记得了还能来看看~~

Python作业第一课
1)登陆,三次输入锁定,下次不允许登陆
2)设计一个三级菜单,菜单内容可自行定义,任意一级输入q则退出程序,如果输入b则返回上一级

--以上两个题目涉及几个知识点:文档的读取,文档的写入,列表的操作,循环的使用,字符串的一些操作
首先回顾一下这几个知识点
a)文档的读取,几个常用的
f = open("test.log","w")
这个w是参数,可换成别的参数
w 以写方式打开,
a 以追加模式打开 (从 EOF 开始, 必要时创建新文件)
r+ 以读写模式打开
w+ 以读写模式打开 (参见 w )
a+ 以读写模式打开 (参见 a )
b)关闭文件
f.close()
c)文件内容操作
f.read()一次性读取全部所有内容,可调整为f.read([size]),读取size个字节的内容
f.readline()读一行数据
f.readlines()一次性读取所有内容按行返回
f.truncate(n)从文件开头截取n个字符,超出的删除
f.seek(n)跳到指定位置n,f.seek(0)是返回文件开始
e.g.
h = open("menu2.log","r")
for line in h.readlines():
if "2" in line:
print(line)
h.close()
f.write(str)写文件
e.g. 是全新创建了一个文件,之前的内容会被清空
h = open("menu2.log","w")
h.write("this is the test line")
h.close()
e.g. 在之前的文件后面追加
h = open("menu2.log","a")
h.write("this is the add line")
h.close()
d)列表的操作(list)
name_list = ["a","b","c","d"]
******************************这里穿插一点东西
我们可以通过dir(name_list)查找可执行的命令[注意前后带_线的没什么用,不需要看]
type(name_list)可返回这个变量的类型
************************************************************
切片:(从0开始,负数是从右边开始,-1是最右边的值)
name_list[1] > b
name_list[-1] > d
name_list[0:2] > a,b 0:2是指的是01两个值并不包括2
name_list[0:3:2] > a,c 0:3:2前面是取abc后面那个2则是指隔2个再切
name_list.append("e") > a,b,c,d,e 向列表最后面增加一个元素
name_list.pop() 删除列表最后的一个元素
name_list.remove("c") 删除叫c的元素
name_list[1] = "ff" 将第二个元素改为ff
name_list.insert(1,"test") 插入一下新元素,索引为1
name_list.count("ff") ff的个数
list2 = ["ee","gg"]
name_list.extend(list2) 把list2合并到name_list
name_list.sort() 将列表排序
e)元组的操作(tuple)
元组跟列表很类似,不同的是一旦初始化后就不能再调整,没有append,insert这样的方法,切片什么的是一样取
f)字符串的格式化操作
name = input("name: ").strip() 输入名字并去除左右的空
print(name) 输出名字
print(name, + "-" + name )
print("Name:%s:\nAge:%s\nJob:%s" %(name,age,job))
g)循环
for i in range(3): 从0-2

while a ==0:
while true: -- 无限循环

break 跳出循环
continue 继续
h)条件判断
if a==0:
elif a==1:
else:

基本的知识点就是这些了,现在进入正题了

1)登陆,三次输入锁定,下次不允许登陆
首先准备了两个文件,一个是用户及密码的,一个是存放写入被锁的用户的,名字分别为:user.log和lockuser.log
user.log中的内容是我事先自己编好放进去的,如下
autumn,autumn123
summer,summer123
angle,angle123
tiffany,tiffany123
fay,fay123
lockuser.log最开始是空的
如果输入用户名正确,密码输入三次错误则写入到lockuser.log,下次再用此用户登陆则会提示该用户被锁

代码如下:

input_name = input("The name is: ").strip() f = open("lockuser.log","r") count = 0 #标识帐户是否被锁定 count1 = 0 #标识是否输对帐户 #查看文件,看输入的账户是否被锁定,锁定则退出程序 for line in f.readlines(): if line.strip() == input_name: print("The account has locked!") count = 1 break f.close() #帐户未被锁定的情况 if count == 0: f1 = open("user.log","r") for line in f1.readlines(): lineword = line.split(',',2) if lineword[0] == input_name: count1 = 1 #帐户输入正确,进入三次输入密码的机会进行输入 for i in range(3): input_password = input("The password is: ").strip() if input_password == lineword[1].strip(): print("Welcome to here, have a good nice trip!") break if i == 2: f2 = open("lockuser.log","a") f2.write("\n") f2.write(lineword[0]) f2.close() print("Three times,the account has locked!") if count1 == 0: print("The user account is not exits!") 2)设计一个三级菜单,菜单内容可自行定义,任意一级输入q则退出程序,如果输入b则返回上一级

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:黄石SEO http://huangshi.4567w.com

上一篇:利用JSONP实现跨域请求 下一篇:最后一页

相关阅读