python 简单的信息管理系统
#!/usr/bin/python
#coding=utf-8
import io
import os
import time
FileRead = io.open('callingcard','r',encoding='utf8')
FileWrite = open('callingcard_copy','w+')
CallingCard = eval(FileRead.read())
def Judge(chioce):
': CallingCard_Append()
': CallingCard_Chance()
': CallingCard_del()
': CallingCard_Look()
': CallingCard_All()
': exit()
elif chioce == 'c' or chioce == 'C': CallingCard_Chance()
elif chioce == 'L' or chioce == 'l': CallingCard_Look()
elif chioce == 'a' or chioce == 'A': CallingCard_Append()
else :
chioce = raw_input('你的输入有误 请重新输入')
Judge(chioce)
def CallingCard_Append():
name = raw_input('请输入姓名:\n')
qq = raw_input('请输入qq号:\n')
wechat = raw_input('请输入微信号:\n')
tel = raw_input('请输入电话号码:\n')
add = raw_input('请输入地址:\n')
CallingCard[name] = {}
CallingCard[name]['QQ'] = qq
CallingCard[name]['微信'] = wechat
CallingCard[name]['电话'] = tel
CallingCard[name]['住址'] = add
print '已经添加成功'
ExChange()
def CallingCard_del():
name = raw_input('请输入你要删除的名片:\n')
if name not in CallingCard:
print '你输入的用户不存在\n'
CallingCard_del()
else:
CallingCard.pop(name)
print '已成功删除'
ExChange()
def CallingCard_Chance():
name = raw_input('请输入你要修改的名片:\n')
if name not in CallingCard:
print '你输入的名片不存在,'
Button = raw_input('请输入正确的名字(C)或查看所以名片(L)\n')
Judge(Button)
else :
chioce = raw_input('请输入你要修改的项目(姓名/QQ/微信/电话/地址):\n')
content = raw_input('请输入你要替换的内容:\n')
if chioce == '姓名':
CallingCard[content] = CallingCard[name]
CallingCard.pop(name)
else :
CallingCard[name].pop(chioce)
CallingCard[name][chioce] = content
ExChange()
def CallingCard_Look():
name = raw_input('请输入你要查看的用户:\n')
if name not in CallingCard:
print '你输入的用户不存在\n'
choice = raw_input('请按L重新查询或者按A新增一个用户\n')
Judge(choice)
else :
print '='*43,'Info of %s'%name,'='*43
str ='''
姓名:%s
电话:%s
QQ号:%s
微信号:%s
地址:%s
'''
print str %(name,CallingCard[name]['QQ'],CallingCard[name]['微信'],CallingCard[name]['电话'],CallingCard[name]['住址'])
ExChange()
def CallingCard_All():
print '='*42,'用户信息管理系统','='*42
num = 1
str = '''
编号:%s 姓名:%s QQ:%s 微信号:%s 电话:%s 地址:%s
'''
for i in CallingCard:
print str %(num,i,CallingCard[i]['QQ'],CallingCard[i]['微信'],CallingCard[i]['电话'],CallingCard[i]['住址'])
num += 1
time.sleep(5)
MenuShow()
def ExChange():
global FileWrite,FileRead
CallingCardCopy = str(CallingCard)
FileWrite.write(CallingCardCopy)
FileWrite.close()
FileRead.close()
os.remove('callingcard')
os.renames('callingcard_copy','callingcard')
FileRead = io.open('callingcard', 'r', encoding='utf8')
FileWrite = open('callingcard_copy', 'w+')
time.sleep(5)
MenuShow()
def MenuShow():
print '='*42,'用户信息管理系统','='*42
print '[1]添加一个新的用户 [2]删除一个用户'
print '[3]修改一个用户的信息 [4]查询一个用户'
print '[5]显示所以的用户 [6]退出'
chioce = raw_input('请输入你的选项\n')
Judge(chioce)
MenuShow()
选择判断模块还可以更简单一点,just so
python 简单的信息管理系统的更多相关文章
- Python实现简单用户注册信息管理系统
运行效果: 注意:运行前请在同一目录下创建一个userdata.bin用于保存用户数据 源代码: 1 # coding:utf-8 2 ''' 3 用户注册信息管理系统 4 功能包括: 5 1.查看全 ...
- Java之从头开始编写简单课程信息管理系统
编写简单的课程管理系统对于新手并不友好,想要出色的完成并不容易以下是我的一些经验和方法 详情可参考以下链接: https://www.cnblogs.com/dream0-0/p/10090828.h ...
- python 04 学生信息管理系统
今天任务不多,做了学生信息管理系统1.0,使用字典存储学生个体信息,列表存储学生字典.注意dict定义要在循环体内,若定义成全局变量或循环体外,则旧数据会被新数据覆盖.dict属于可变类型数据,内容改 ...
- Python之小型信息管理系统
#Author:msq #Time:2019/11/16 import re import os filename = "person.txt" def menu(): #输出菜单 ...
- python简单post信息
最近学了点关于python的网络爬虫的知识,简单记录一下,这里主要用到了requests库和BeautifulSoup库 Requests is an elegant and simple HTTP ...
- 1、纯python编写学生信息管理系统
1.效果图 2.python code: class studentSys(object): ''' _init_(self) 被称为类的构造函数或初始化方法, self 代表类的实例,self 在定 ...
- python之学生信息管理系统
1 #!usr/bin/python 2 #encoding=utf-8 3 4 #1. 打印学生管理系统界面 5 def printStd(): 6 print ("*"*50) ...
- Java Swing设计简单商品信息管理系统(java swing+mysql+eclipse)
一.概述 为了管理好商店库存信息,提升店铺管理工作效率,结合实际工作需要,设计和开发本系统,主要用于商店商品信息维护出入库等.包含商品库存信息查看.商品信息修改,新增商品信息,删除信息等功能. 二.功 ...
- 【python免费代码】设计一个简单的学生信息管理系统
文章目录 前言 一.理解 二.部分截图展示 三.代码 四.总结 前言 设计一个简单的学生信息管理系统,实现以下功能(bug) : 录入学生信息,信息以文件方式存储 以学生学号或者学生姓名为条件查询该学 ...
随机推荐
- 如何在Eclipse CDT中编译含有多个main函数的项目
最近在杭电ACM上做题,使用的C++工具是Eclipse,但是Eclipse CDT不能同时存在多个main函数的文件,上网也搜了很多资料,但是按他们的步骤来,还是不能实现自己想要的效果.经过一下午的 ...
- Understanding the Objective-C Runtime
Wednesday, January 20, 2010 Understanding the Objective-C Runtime The Objective-C Runtime is one of ...
- C# 设置Word文档背景(纯色/渐变/图片背景)
Word是我们日常生活.学习和工作中必不可少的文档处理工具.精致美观的文档能给人带来阅读时视觉上的美感.在本篇文章中,将介绍如何使用组件Free Spire.Doc for .NET(社区版)给Wor ...
- ScrollView与ListView嵌套使用,导致ListView下拉失效
在一次项目开发中,在Scrollv中嵌套进ListView,当触摸ListView范围下拉时,整个展示页面滑动,而不是ListView内容滑动, 也就是说ListView滑动事件被ScrollView ...
- two sum II
Given an array of integers that is already sorted in ascending order, find two numbers such that the ...
- DIV与SPAN之间有什么区别
DIV与SPAN之间有什么区别 DIV 和 SPAN 元素最大的特点是默认都没有对元素内的对象进行任何格式化渲染.主要用于应用样式表(共同点). 两者最明显的区别在于DIV是块元素,而SPAN是行内元 ...
- Storyboard中ViewController加载的四种方式
这个总结来自于<Programming iOS 10>一书: 1.storyboard的初始化ViewController,通过方法instantiateInitialViewContro ...
- error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MTd_StaticDebug”不匹配值“MDd_DynamicDebug
属性1. 在工程上右键->属性->c/c++->代码生成->运行库 四个选项及含义分别如下: 1.1 /MDd:MD_DynamicDebug,我理解是 "共享DLL ...
- C#学习笔记 day_three
C#学习笔记 day three Chapter 3 类型 3.3引用类型 引用类型的变量也成为对象,有六种类型:(1)对象类型 (2)字符串类型 (3)类类型 (4)数组类型 (5)接口类型 (6) ...
- node七-required、缓存
学会查API,远比会几个API更重要. 核心模块意义 -如果只是在服务器运行javascript代码,并没有多大意义,因为无法实现任何功能>读写文件.访问网络 -Node的用处在于它本身还提供可 ...