主文件:

import stu_tools

while True:
    stu_tools.select_list()
    select = input("请输入您的操作指令")
    print("您选择的操作指令是%s" %select)
    "]:
        ":
            stu_tools.add_stu_mess()
        ":
            stu_tools.show_stu_allmess()
        else:
            stu_tools.search_stu()
    ":
        exit()
    else:
        print("输入错误,请重新输入")

工具封装文件:

mess_list=[]
def select_list():
    # 显示菜单
    print("*" * 30)
    print("1.新建名片")
    print("2.查看全部")
    print("3.修改名片")
    print("0.退出系统")
    print("*" * 30)
def add_stu_mess():
    # 新增信息
    # 1.提示用户输入相关信息
    name=input("请输入用户姓名:")
    tel = input("请输入用户电话:")
    qq = input("请输入用户QQ:")
    mali = input("请输入用户邮箱:")
    # 2.把用户信息添加到字典当中
    dict_mess={"name":name,"tel":tel,"qq":qq,"mali":mali}
    mess_list.append(dict_mess)
    print("用户%s添加成功" %name)
def show_stu_allmess():
    if len(mess_list)==0:
        print("当前没有学生信息,请添加")
        return
    # 显示所有信息
    for name in ["姓名","电话","QQ","邮箱"]:
        print(name,end="\t\t")
    print("")
    # 1.遍历列表中的字典
    for c in mess_list:
        print(c["name"]+"\t\t"+c["tel"]+"\t\t"+c["qq"]+"\t\t"+c["mali"])
def search_stu():
    # 搜索信息
    find_name=input("请输入要查询的学生姓名")
    for dict_stu in mess_list:
        if dict_stu["name"]==find_name:
            for name in ["姓名", "电话", "QQ", "邮箱"]:
                print(name, end="\t\t")
            print("")
            print(dict_stu["name"] + "\t\t" + dict_stu["tel"] + "\t\t" + dict_stu["qq"] + "\t\t" + dict_stu["mali"])
            break
        else:
            print("抱歉  %s不存在系统" %find_name)
def deal_sru_mess(dict_stu):
    select_deal=input("清选择要执行的操作:"
          "[1] 修改[2] 删除] [3] 返回上级菜单")
    ":
        dict_stu["name"]=print("修改姓名")
        dict_stu["tel"] = print("修改电话")
        dict_stu["qq"] = print("修改QQ")
        dict_stu["mali"] = print("修改mali")
    ":
        mess_list.remove(dict_stu)
        print("删除成功")
    else:
        return
    

个人所得:

  import 调用同目录的py文件,使用该文件的方法用:文件名.方法

  break:是结束一个方法

  return:完全中止循环

  continue:只中止本次循环,接着开始下一次循环

  input的输入文字为 String类。

  需要多加学习和练习,还在努力,加油!

Python基础学习----名片管理系统学习笔记的更多相关文章

  1. [新手必备]Python 基础入门必学知识点笔记

    Python 作为近几年越来越流行的语言,吸引了大量的学员开始学习,为了方便新手小白在学习过程中,更加快捷方便的查漏补缺.根据网上各种乱七八糟的资料以及实验楼的 Python 基础内容整理了一份极度适 ...

  2. python基础-------python2.7教程学习【廖雪峰版】(二)

    2017年6月7日14:59:27任务:    看完python基础1.计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值.但是,计算机能处理的远不止数值,还可以处理文 ...

  3. Python基础 小白[7天]入门笔记

    笔记来源 Day-1 基础知识(注释.输入.输出.循环.数据类型.随机数) #-*- codeing = utf-8 -*- #@Time : 2020/7/11 11:38 #@Author : H ...

  4. python基础知识小结-运维笔记

    接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...

  5. <<Python基础教程>>学习笔记 | 第10章 | 充电时刻

    第10章 | 充电时刻 本章主要介绍模块及其工作机制 ------ 模块 >>> import math >>> math.sin(0) 0.0 模块是程序 一个简 ...

  6. <<Python基础课程>>学习笔记 | 文章13章 | 数据库支持

    备注:本章介绍了比较简单,只是比较使用样品,主要假设是把握连接,利用数据库.和SQLite做演示样本 ------ Python数据库API 为了解决Python中各种数据库模块间的兼容问题,如今已经 ...

  7. <<Python基础教程>>学习笔记 | 第11章 | 文件和素材

    打开文件 open(name[mode[,buffing]) name: 是强制选项,模式和缓冲是可选的 #假设文件不在.会报以下错误: >>> f = open(r'D:\text ...

  8. <<Python基础教程>>学习笔记 | 第04章 | 字典

    第04章:字典 当索引不好用时 Python唯一的内建的映射类型,无序,但都存储在一个特定的键中.键能够使字符.数字.或者是元祖. ------ 字典使用: 表征游戏棋盘的状态,每一个键都是由坐标值组 ...

  9. <<Python基础教程>>学习笔记 | 第12章 | 图形用户界面

    Python支持的工具包非常多.但没有一个被觉得标准的工具包.用户选择的自由度大些.本章主要介绍最成熟的跨平台工具包wxPython.官方文档: http://wxpython.org/ ------ ...

随机推荐

  1. Mysql学习笔记—concat以及group_concat的用法(转载)

    本文中使用的例子均在下面的数据库表tt2下执行: 一.concat()函数 1.功能:将多个字符串连接成一个字符串. 2.语法:concat(str1, str2,...) 返回结果为连接参数产生的字 ...

  2. MySQL 储存过程-原理、语法、函数详细说明

    Mysql储存过程是一组为了完成特定功能的SQL语句集,经过编译之后存储在数据库中,当需要使用该组SQL语句时用户只需要通过指定储存过程的名字并给定参数就可以调用执行它了,简而言之就是一组已经写好的命 ...

  3. cocos-lua基础学习(九)spite类学习笔记

    创建精灵 ,) ) layer:addChild( sprite ) ) layer:addChild(BatchNode, , kTagSpriteBatchNode) ,) ) layer:add ...

  4. Python:笔记(7)——yield关键字

    Python:笔记(7)——yield关键字 yield与生成器 所谓生成器是一个函数,它可以生成一个值的序列,以便在迭代中使用.函数使用yield关键字可以定义生成器对象. 一个例子 我们调用该函数 ...

  5. UnicodeDecodeError: 'ascii' codec can't decode byte 0xbb in position 51: ord

    1.问题描述:一个在Django框架下使用Python编写的定时更新项目,在Windows系统下测试无误,在Linux系统下测试,报如下错误: ascii codec can't decode byt ...

  6. centos6.5搭建svn

    检查已经安装版本  rpm -qa subversion如果存在旧版本,卸载yum remove subversion 安装svn yum install subversion 验证是否安装成功 sv ...

  7. [one day one question] 部分ios版本 在display: inline-block时候不支持flex

    问题描述: 部分ios 在display: inline-block时候不支持flex,这怎么破? 解决方案: so easy,不要使用display: inline-block;就行啦 君生我未生, ...

  8. shell指令操作memcached

    shell指令操作memcached,可以用来直接测试memcached. 初始值为1000 #set test-value =1000printf "set test-value 0 0 ...

  9. web实现负载均衡的几种实现方式

    摘要: 负载均衡(Load Balance)是集群技术(Cluster)的一种应用.负载均衡可以将工作任务分摊到多个处理单元,从而提高并发处理能力.目前最常见的负载均衡应用是Web负载均衡.根据实现的 ...

  10. Linux内核分析第一周-通过分析汇编代码理解计算机是如何工作的

    首先,我们先写一个简单的C语言程序,如下: int g(int x) { return x +3; } int f(int x) { return g(x); } int main(void) { r ...