欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python3.4实战小例子 博客分类: Python python3增删改查 

程序员文章站 2024-02-13 10:17:10
...
接触python有一段时间了,今天综合的写了一个小例子,凑合着可以使用,如果有时间的话可以更好的把程序按MVC的方式设计一下,这样以来通用性会更好,或者做成GUI的方式+数据库,这样更人性化.

项目介绍:一个基于python控制台,完成的增删改查一个小例子,提供的方式都比较简单,适合新手学习一下,可以和Java做个对比。


用到的知识:

1,python的面向对象类和方法,构造方法,变量的使用
2,导包,导类的使用
3,使用字典模拟python中的switch语句
4,使用exec执行字符串命令,类似shell里面的``操作符,javascript里面的eval()方法
5,list和字典存储容器
6,if,else和for,range流程控制和循环的使用
7,python里面的睡眠函数类似java里的sleep,以及python里面的exit函数
8,python里面读取函数的使用,和字符串转整形的命令的使用


源码如下:
class Student:
    id="1"
    name="name"
    age=12

    def __init__(self,id,name,age):
        self.id=id
        self.name=name
        self.age=age

    def __str__(self):
        #print(self.id,self.name,self.age)
        return  str(self.id)+"   "+self.name+"   "+str(self.age)






核心的操作类如下:
import  time
import  sys
#import  stt.student as a
#然后a.Student()实例化对象
#同级可以直接导入
from  student import Student
#不同级目录可以这样写
from  stt.student import Student


def  initialDatas():

    j=list();
    s1=Student(33,"张三1",221)
    s2=Student(45,"张三2",24)
    s3=Student(13,"张三3",18)
    s4=Student(40,"张三4",10)
    s5=Student(5,"张三5",19)
    j.append(s1)
    j.append(s2)
    j.append(s3)
    j.append(s4)
    j.append(s5)
    return  j

d=initialDatas()


def end():
    print("欢迎下次使用^_^!!!")
    sys.exit(0)


def showAll():
    for v in range(len(d)):
       print(v+1,d[v])



def switch(key):
    t = {
        "1": "showAll()",
        "2": "add()",
        "3": "delete()",
        "4": "update()",
        "5": "end()"
    }
    s=t.get(key)
   #print("kkk: ",s)
    exec(s)
    select()

def add():
    id=input("请输入id:")
    name=input("请输入名字: ")
    age=input("请输入年龄: ")
    d.append(Student(id,name,age))
    print("添加成功!!!")


def delete():

   id=int(input("请输入要删除的id号:"))
   for v in d:
      if (v.id == id) :
        print("找到了:",v)
        d.remove(v)
        print("删除成功!")



def update():
    id=int(input("请输入要修改的id:"))
    for v in range(len(d)):
        if(d[v].id == id):
            #print("找到 :", d[v])
            d[v].name=input("请输入新的名字:")
            d[v].age=int(input("请输入新的年龄: "))
            print("修改成功!")
            return

        if (v==(len(d)-1)):
              print("对不起,没有找到数据,请核对!")






def select():
    print("1,查看所有")
    print("2,新增一条")
    print("3,删除一条")
    print("4,修改一条")
    print("5,退出程序")
    #time.sleep(1)
    choice=input("请选择功能:")
    switch(choice)



select()











运行内容如下:
1,查看所有
2,新增一条
3,删除一条
4,修改一条
5,退出程序
请选择功能:1
1 33   张三1   221
2 45   张三2   24
3 13   张三3   18
4 40   张三4   10
5 5   张三5   19
1,查看所有
2,新增一条
3,删除一条
4,修改一条
5,退出程序
请选择功能:4
请输入要修改的id:444
对不起,没有找到数据,请核对!
1,查看所有
2,新增一条
3,删除一条
4,修改一条
5,退出程序
请选择功能:1
1 33   张三1   221
2 45   张三2   24
3 13   张三3   18
4 40   张三4   10
5 5   张三5   19
1,查看所有
2,新增一条
3,删除一条
4,修改一条
5,退出程序
请选择功能:4
请输入要修改的id:45
请输入新的名字:我是新改的张三45
请输入新的年龄: 100
修改成功!
1,查看所有
2,新增一条
3,删除一条
4,修改一条
5,退出程序
请选择功能:1
1 33   张三1   221
2 45   我是新改的张三45   100
3 13   张三3   18
4 40   张三4   10
5 5   张三5   19
1,查看所有
2,新增一条
3,删除一条
4,修改一条
5,退出程序
请选择功能:4
请输入要修改的id:40
请输入新的名字:new
请输入新的年龄: 00
修改成功!
1,查看所有
2,新增一条
3,删除一条
4,修改一条
5,退出程序
请选择功能:1
1 33   张三1   221
2 45   我是新改的张三45   100
3 13   张三3   18
4 40   new   0
5 5   张三5   19
1,查看所有
2,新增一条
3,删除一条
4,修改一条
5,退出程序
请选择功能:5
欢迎下次使用^_^!!!