zoukankan      html  css  js  c++  java
  • Python学习练习题

      今天上研究生课程,发现测绘的平差啥的也太难了。不过今天开心的事情是认识了一个有趣的湖南女孩子,她也正在学习Python。今天获得的一个新知识,数学王子高斯居然还是一个大地测量学家,以前的这些厉害的人真全能。

      练习了两个小作业,一个是实现登录操作,另一个是实现三级菜单。费了好大力气才调试好,基础真是太差了。每天都有点着急的想快点学习这些Python的知识,可能我做事情是有点急于求成了,但是一旦时间过去,而没有进展就很容易搁置这些要学的东西。

      因为参照了不少别人的程序,这里简单贴一下代码。并不是最优的程序,但是我觉得这已经是我目前所能达到的最好的样子了。

    程序1:

    #readme:实现登录,(用文件实现)若用户名密码为已有的,则登录成功;若密码错误或用户名不存在,则登录失败。最多尝试三次,
    # 否则会锁定用户(while循环),而且要加入黑名单文件
    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    '''f=open('blacklist.txt',"w+")
    f.write("aaa")
    f.close()'''
    username="Alex"
    userkeys="123"
    count=0
    #打开黑名单文件检查是否存在黑名单里,读到一个列表里
    f=open("test.txt","r")
    file_list=f.readlines() #把文件里的行读到list里
    lock=[]
    f.close()
    name=input("请输入姓名")
    #使用循环实现,只有循环次数小于等于3的时候才会去搜索文件里已有的用户名和密码。若存在,则登录成功,
    # 退出循环;若没有,则登录失败。如果尝试次数大于三次了,则提示用户已锁定。
    for i in file_list:
    line=i.strip(" ")
    lock.append(line)
    if name in lock:
    print("你的用户已被锁定")
    else:
    if name==username:
    while count<3:
    password=input("请输入密码")
    if password==userkeys:
    print("欢迎登陆")
    break
    else:
    print("密码错误")
    count+=1
    else:
    print("账户已锁定")
    f=open("aaa.txt","w+")
    li=["%s"%name]
    f.writelines(li)
    f.close()
    else:
    print("用户名不存在,请输入正确的用户名")

    程序2:

    '''
    建立一个三级搜索目录,比如省市区。使用字典来建立,每次选择一个上一级菜单,则显示下一级菜单里所包含的,
    返回上一级菜单
    '''
    menu={"浙江省":{"杭州市":
    {"西湖区":{},"上城区":{}},
    "嘉兴市":
    {"南湖区":{},"秀洲区":{}}
    },
    "江苏省":{"苏州市":
    {"吴中区":{},"吴江区":{}}
    }
    }
    current_layer=menu
    layer=[]
    while True:
    for i in current_layer:
    print(i)
    choice = input("choose a prvince or press b to back and press q to quit:").strip()
    if not choice:
    continue
    if choice in current_layer:
    layer.append(current_layer)
    current_layer = current_layer[choice]
    elif choice == 'b':
    current_layer = layer.pop()
    elif choice == 'q':
    break
    else:
    print("输入不正确")

    再次感慨,Python的缩进真的太重要了。
  • 相关阅读:
    【转】CUDA5/CentOS6.4
    【转】centos 6.4 samba 安装配置
    【转】Install MATLAB 2013a on CentOS 6.4 x64 with mode silent
    【转】Getting xrdp to work on CentOS 6.4
    【VLFeat】使用matlab版本计算HOG
    Unofficial Windows Binaries for Python Extension Packages
    March 06th, 2018 Week 10th Tuesday
    March 05th, 2018 Week 10th Monday
    March 04th, 2018 Week 10th Sunday
    March 03rd, 2018 Week 9th Saturday
  • 原文地址:https://www.cnblogs.com/zyycumt/p/11483492.html
Copyright © 2011-2022 走看看