美文网首页
2018-03-24 python 练习

2018-03-24 python 练习

作者: xiaoke123456 | 来源:发表于2018-03-24 15:16 被阅读0次

    1.在 python 交互环境中练习:

    #123 + 321 444  int
    #123 - 321 -198 int
    #123 * 4 492  int
    #123 / 2 61.5 float
    #123 // 2 整除 61  int
    #123 % 2  求余 1 int
    
    print(123%2)
    print(type(123%2))
    
    

    2. 把"abc123=",字符串中等号替换成下划线。

    str = "abc123=".replace("=","_")
    
    print(str)
    
    

    3. 把字符串“abc”反转成“cba”。

    Str = "abc"
    
    #[::-1]  将元组或列表的内容翻转
    
    newStr= Str[::-1]
    print(newStr)
    

    4. a = "abcdefg123456", a[2:8:2]的值是多少。

    a = "abcdefg123456"
    b = a[2:8:2]
    print(b) #ceg
    

    5. d={"a":1,"b":2},把键“a”的值改为 100,改完之后,把{“c”:3,"d":4}合并到 d 字典 中。

    d={"a":1,"b":2}
    d["a"] = 100
    print(d)
    
    e = {"c":3,"d":4}
    print(e)
    
    d.update(e)
    
    print(d)
    

    6. 编写代码设计简易计算器,可以进行基本的加减乘除运算。

    number_a = input("输入第一个数字:")
    number_a = int(number_a)
    
    ceter_mark = input("输入要进行的运算:")
    
    number_b = input("输入第二个数字:")
    number_b = int(number_b)
    
    
    if ceter_mark == "+":
       print(number_a + number_b)
    elif ceter_mark == "-":
       print(number_a - number_b)
    elif ceter_mark == "*":
       print(number_a * number_b)
    else:
       print(number_a/number_b)
    

    7. 编写程序,从键盘获取用户名和密码,然后判断,如果正确就输出以下信息: "欢迎来到 博学谷!"。

    code = input("输入用户名:")
    password = input("输入密码:")
    
    if code != "123456":
        print("用户名错误")
    elif password != "111":
        print("密码错误")
    else:
        print("欢迎来到 博学谷!")
    
    

    8. 现有一字符串 a = “abcdefg”,将字符串中的元素逐个输出。

    a = "abcdefg"
    
    for i in  a :
        print(i)
    

    9. 使用 while 循环计算 1~100 的累积和(包含 1 和 100)。

    a = 1
    sum = 0
    while a<=100:
       sum = sum+a
       a = a+1
     print("sum为{}".format(sum))
    

    10. 编写代码模拟用户登陆。要求:用户名为 python,密码 123456,如果输入正确,打 印“欢迎光临”,程序结束,如果输入错误,提示用户输入错误并重新输入。

    code = input("输入用户名:")
    password = input("输入密码:")
    
    if code != "python":
        print("用户名错误,重新输入")
    elif password != "123456":
        print("密码错误,重新输入")
    else:
        print("欢迎光临")
    

    11. 编写函数,参数为 a1 和 a2,如果 a1 大于 a2 则函数返回 1,如果 a1 小于 a2 则函数 返回-1,如果 a1 等于 a2 则函数返回 0。

    def compare_num(a1,a2):
        if a1 > a2:
            return  1
        elif a1 < a2 :
            return  -1
        else:
            return  0
    
    a = compare_num(3,1)
    print(a)
    

    12. 分别定义一个字符串类型的全局变量、列表类型的全局变量。定义函数 test1,在函数 中分别使用,总结有什么区别?

    str = "你好呀,全局变量"
    list = ["1","2","3","4","5"]
    
    def test1():
        newStr = str[::-1]
        list.append("6")
        print(list)
        print(newStr)
    
    test1()
    

    13. 完成一个简单的学生管理系统,实现学生信息的增删改查,学生信息包括姓名,年龄, 学号

    • 基础创建学生管理系统
    # 1.学生信息保存在字典里面
    # 2.所有的学生信息放在列表中
    
    # while True
    # 3.打印提示
    # 4.用户输入
    # 5.拿到用户输入的结果
    # 6.根据结果选择要做的事情,即选择要调用的函数
    # 函数1.展示全部学生信息
    # 函数2.搜索一个学生
    # 函数3.增加一个学生
    # 函数4.修改一个学生
    # 函数5.删除一个学生
    # 7.用户退出,break
    
    
    studeut_list = [{"name": "xiaohong", "age": "15", "num": 1}]
    
    
    def print_info():
        print("*" * 20)  # 3.打印提示
        print("欢迎来到学生信息管理系统")
        print("1.展示全部学生")
        print("2.搜索一个学生")
        print("3.增加一个学生")
        print("4.修改一个学生")
        print("5.删除一个学生")
        print("6.退出信息系统")
        print("*" * 20)
        user_input = input("输入选择的序号:")
        return user_input
    
    
    def main():
        while True:
            user_input = print_info()
            if user_input in ["1", "2", "3", "4", "5", "6"]:
                if user_input == "1":
                    show_all_stu()
                elif user_input == "2":
                    saerch_stu()
                elif user_input == "3":
                    addnew_stu()
                elif user_input == "4":
                    modify_stu_info()
                elif user_input == "5":
                    delegate_stu()
                elif user_input == "6":
                    print("再见")
                    break
            else:
                print("不好意思,你输入错误,请重新输入")
    
    
    
    def show_all_stu():
        for stu in studeut_list:
            print(stu)
    
    
    def saerch_stu():
        user_input_name = input("输入您要搜索的学生姓名:")
        stu_exist = False
        for stu in studeut_list:
            if stu["name"] == user_input_name:
                stu_exist = True
                print(stu)
        if not stu_exist:
            print("输入的学生不存在")
    
    
    def addnew_stu():
        stu_name = input("请输入要添加的学生姓名:")
        stu_age = input("请输入要添加的学生年龄:")
        stu_num = input("请输入要添加的学生学号:")
        new_stu = {"name": stu_name, "age": stu_age, "stu_num": stu_num}
        studeut_list.append(new_stu)
        print("学生:{}信息添加成功".format(stu_name))
    
    def  modify_stu_info():
        stu_name = input("输入要修改的学生姓名:")
        stu_exist = False
        for stu in studeut_list:
            if stu["name"] == stu_name:
                stu_exist = True
                user_input_age = input("输入修改的年龄")
                user_input_num = input("输入修改的学号")
                stu["age"] = user_input_age
                stu["num"] = user_input_num
                print("学生:{}信息修改成功".format(stu_name))
        if not  stu_exist:
            print("输入的学生不存在")
    
    
    
    def delegate_stu():
        user_input_name = input("输入要删除学生的姓名:")
        stu_exist = False
        for stu in  studeut_list:
            if stu["name"] == user_input_name:
                stu_exist = True
                studeut_list.remove(stu)
                print("删除{}学生成功".format(user_input_name))
        if not stu_exist:
            print("输入的学生不存在")
    
    main()
    
    
    • 利用实例化方法进行重构
    class StudentSystem:
    
        #进行对象实例化方法,可在对象方法内添加参数
        #引入 self 关键字  self代表这个实例
        #self 可对对象内部的属性进行打点调用
        #属性 在本类中任意位置可调用
        def __init__(self,name,age,num):
    
            self.name = name
            self.age = age
            self.num = num
            self.studeut_list = [{"name":self.name, "age":self.age, "num": self.num}]
    
    
        def print_info(self):
            print("*" * 20)  # 3.打印提示
            print("欢迎来到学生信息管理系统")
            print("1.展示全部学生")
            print("2.搜索一个学生")
            print("3.增加一个学生")
            print("4.修改一个学生")
            print("5.删除一个学生")
            print("6.退出信息系统")
            print("*" * 20)
            user_input = input("输入选择的序号:")
            return user_input
    
        def show_all_stu(self):
            for stu in self.studeut_list:
                print(stu)
    
        def saerch_stu(self):
            user_input_name = input("输入您要搜索的学生姓名:")
            stu_exist = False
            for stu in self.studeut_list:
                if stu["name"] == user_input_name:
                    stu_exist = True
                    print(stu)
            if not stu_exist:
                print("输入的学生不存在")
    
        def  addnew_stu(self):
             stu_name = input("请输入要添加的学生姓名:")
             stu_age = input("请输入要添加的学生年龄:")
             stu_num = input("请输入要添加的学生学号:")
             new_stu = {"name": stu_name, "age": stu_age, "stu_num": stu_num}
             self.studeut_list.append(new_stu)
             print("学生:{}信息添加成功".format(stu_name))
    
        def modify_stu_info(self):
            stu_name = input("输入要修改的学生姓名:")
            stu_exist = False
            for stu in self.studeut_list:
                if stu["name"] == stu_name:
                    stu_exist = True
                    user_input_age = input("输入修改的年龄")
                    user_input_num = input("输入修改的学号")
                    stu["age"] = user_input_age
                    stu["num"] = user_input_num
                    print("学生:{}信息修改成功".format(stu_name))
            if not stu_exist:
                print("输入的学生不存在")
    
        def delegate_stu(self):
            user_input_name = input("输入要删除学生的姓名:")
            stu_exist = False
            for stu in self.studeut_list:
                if stu["name"] == user_input_name:
                    stu_exist = True
                    self.studeut_list.remove(stu)
                    print("删除{}学生成功".format(user_input_name))
            if not stu_exist:
                print("输入的学生不存在")
    
    
        def main_system(self):
           while True:
                user_input = self.print_info()
                if user_input in ["1", "2", "3", "4", "5", "6"]:
                    if user_input == "1":
                        self.show_all_stu()
                    elif user_input == "2":
                        self.saerch_stu()
                    elif user_input == "3":
                        self.addnew_stu()
                    elif user_input == "4":
                        self.modify_stu_info()
                    elif user_input == "5":
                        self.delegate_stu()
                    elif user_input == "6":
                        print("再见")
                        break
    
                    else:
                        print("不好意思,你输入错误,请重新输入")
    
    
    
    if __name__ == '__main__':
        student_system = StudentSystem("小红","18","100") #实例化 对象
        student_system.main_system() #对象调用内部方法
    
    
    

    14. 自己编写一个模块,模块中有一个函数,可以判断一个数字是偶数还是奇数。在其他的 py 文件中调用自己写的模块。

    • 新建一个py文件 创建一个判断数字奇偶的方法
    • 外部调用的时候使用
    from 模块名称 import  方法名称
    
    num_search(101)
    

    15. 将字典{"a":1,"b":2}转换成 json 字符串,把 json 字符串'{"a":1,"b":2}'转换成字典

    num_dict =  {"a":1,"b":2}
    
    #字典转json字符串
    json_str = json.dumps(num_dict) 
    #json字符串转字典
    new_dict = json.loads(json_str)
    
    print(json_str)
    print(type(json_str))
    print(new_dict)
    print(type(new_dict))
    
    

    16. 使用 open 函数打开一个文件,把"abc123"字符串,写入文件中.

    f = open("b.txt","w")
    f.write("abc123")
    f.close()
    

    17. 定义一个 Aniaml 类,类中定义一个 bark 方法,创建一个实例对象,调用 bark 方法。

    18. 定义一个 Aniaml 类,初始化 name 和 color 两个属性,类中定义一个 bark 方法用 来打印 name 属性以及 color 属性。创建一个实例对象,调用 bark 方法。

    class Animal:
        def __init__(self,name,color):
            self.name = name
            self.color = color
    
        def  bark(self):
            print("{}的{}在叫".format(self.color,self.name))
    
    if __name__ == '__main__':
        animal = Animal("汪汪","白色")
        animal.bark()
    

    26. s = 'b你好' python3 中,请把 s 转成 utf8 格式

    #str 使用encode方法转化为 bytes�
    #bytes通过decode转化为str
    s = "b你好"
    b = s.encode("utf8")
    print(b)
    

    相关文章

      网友评论

          本文标题:2018-03-24 python 练习

          本文链接:https://www.haomeiwen.com/subject/pdbqcftx.html