• 面向对象

    •   类和装饰器@

      •   

        #coding=gbk
        
        class student:
        def __init__(self,name,grand):#初始化构造函数,self相当于java中的this,相当于一个student的一个对象
        self.name=name
        self.grand=grand def introduce(self):
        print('hi ! i am '+self.name)
        print('my grade is : '+str(self.grand)) def improve(self,amount):
        self.grand=self.grand+amount jim=student('jim',)
        jim.introduce() jim.improve()
        jim.introduce() #python中的装饰器
        def add_candles(cake_func): #传入的参数可以是一个函数 cake_func函数
        def insert_candles():#在一个大的函数中建立一个小函数去修改值
        return cake_func()+"candles"
        return insert_candles #返回的是insert的一个对象
        @add_candles #装饰器@ 就是在要修改的函数的上方加上:@+修改该函数需要用到的函数
        def make_cake():
        return 'cake' print(make_cake()) def add_a(b):
        def add_b():
        return b()+
        return add_b
        @add_a
        def b():
        return print(b())

        GUI对话框

      • #coding=gbk
        
        #图形界面和参数字游戏
        #利用tkinter库创建图形界面 from tkinter import * #导入tkinter中所有的东西
        import tkinter.simpledialog as dl
        import tkinter.messagebox as mb #设置GUI,显示对话框
        root=Tk() #tkinter中的一个构造函数 创建一个显示框
        w=Label(root,text='Label Title') #创建爱你一个标签 包含窗口和标签标题
        w.pack()#标签自带的函数 调整大小 #输入
        mb.showinfo('welcome', 'welcome message')
        guess=dl.askinteger('number','enter a number' )#提供一个用户输入的对话框,输入一个整型的数,传递给guess #输出
        output='this is output message'
        mb.showinfo('output', output)

        猜数字游戏

      • 1.GUI  form tkinter
      • 2.逻辑层
      • #coding=gbk
        
        from tkinter import  *  #导入tkinter中所有的东西
        import tkinter.simpledialog as dl
        import tkinter.messagebox as mb #设置GUI,显示对话框
        root=Tk() #tkinter中的一个构造函数 创建一个显示框
        w=Label(root,text='!猜数字游戏!') #创建爱你一个标签 包含窗口和标签标题
        w.pack()#标签自带的函数 调整大小 mb.showinfo('welcome', 'welcome to guess number game')#展示标签信息 number=
        while True:
        guess=dl.askinteger('number','what is your guess' )#提供一个用户输入的对话框,输入一个整型的数,传递给guess if guess==number:
        output='bingo! you guessed it right,but you do not win any prizes~!'
        mb.showinfo('output', output)
        break
        elif guess<number:
        output='you guessed it wrong,it is too small'
        mb.showinfo('output', output)
        else:
        output='you guessed it wrong,it is too big'
        mb.showinfo('output', output)
        print('DONE')

Python学习笔记--2--面向对象编程的更多相关文章

  1. python 学习笔记7 面向对象编程

    一.概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发"更快更好更强..." ...

  2. python学习笔记(七):面向对象编程、类

    一.面向对象编程 面向对象--Object Oriented Programming,简称oop,是一种程序设计思想.在说面向对象之前,先说一下什么是编程范式,编程范式你按照什么方式来去编程,去实现一 ...

  3. Python学习笔记之面向对象编程(三)Python类的魔术方法

    python类中有一些方法前后都有两个下划线,这类函数统称为魔术方法.这些方法有特殊的用途,有的不需要我们自己定义,有的则通过一些简单的定义可以实现比较神奇的功能 我主要把它们分为三个部分,下文也是分 ...

  4. python学习笔记1 -- 面向对象编程高级编程1

    说起高级其实也就是些基础的东西,但是活用和熟用肯定会大幅度提升代码质量 首先要记录的是面向对象的灵活性,及如何去控制其灵活性,她允许你在实例中新增属性和方法,允许你给类新增属性和方法,也支持在定义类时 ...

  5. python学习笔记1 -- 面向对象编程类和实例

    由于之前有一定基础,所以python中的类的概接受的比较快,与其他语言一样, python也是通过类来进行事务的抽象,一切皆对象,要不然怎么说程序员不缺对象呢. 言归正传,python中类的声明是cl ...

  6. python自动化测试学习笔记-7面向对象编程,类,继承,实例变量,邮件

    面向对象编程(OOP)术语: class TestClass(object):   val1 = 100       def __init__(self):     self.val2 = 200   ...

  7. javascript 学习笔记之面向对象编程(一):类的实现

    ~~想是一回事,做是一回事,写出来又是一回事~~一直以来,从事C++更多的是VC++多一些,从面向过程到面向对象的转变,让我对OO的编程思想有些偏爱,将一个客观存在的规律抽象出来总是让人比较兴奋,通过 ...

  8. python学习笔记_week6_面向对象

    面向对象 介绍(特性(class.object--->封装.继承,多态)).--->世界万物,皆可分类:世界万物,皆可对象 只要是对象,就肯定属于某种品类:只要是对象,就肯定有属性 你是上 ...

  9. python学习笔记(6)--面向对象学习

    本节内容:   面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法.   引言 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做(人狗大战)的游戏,你就思 ...

  10. JavaSE学习笔记05面向对象编程01

    面向对象编程01 java的核心思想就是OOP 面向过程&面向对象 面向过程思想: 步骤清晰简单,第一步做什么,第二步做什么...... 面向过程适合处理一些较为简单的问题 面向对象思想: 物 ...

随机推荐

  1. The Great Mixing

    Sasha and Kolya decided to get drunk with Coke, again. This time they have k types of Coke. i-th typ ...

  2. python发短信功能

    http://www.cnblogs.com/martianShu/p/5847289.html

  3. 【HTML5】Canvas绘制基础

    什么是 Canvas? HTML5 的 canvas 元素使用 JavaScript 在网页上绘制图像. 画布是一个矩形区域,您可以控制其每一像素. canvas 拥有多种绘制路径.矩形.圆形.字符以 ...

  4. bzoj 3505 [Cqoi2014]数三角形——排列组合

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=3505 好题!一定要经常回顾! 那个 一条斜线上的点的个数是其两端点横坐标之差和纵坐标之差的g ...

  5. 数据格式化和ModelAttribute注解的介绍

    关于数据传递: 客户端传递数据到服务端: 1.使用普通的形式 A.传递简单的数据 如果是说你传递的数据的名称跟控制层中的形参的名称不一致的情况下需要使用 注解: @RequestParam()如果存在 ...

  6. [转载]PCI/PCIe基础——配置空间

    转载地址:http://blog.csdn.net/jiangwei0512/article/details/51603525 PCI/PCIe设备有自己的独立地址空间,这部分空间会映射到整个系统的地 ...

  7. Windows:cmd的使用

    1.如果在cmd.exe中无法运行软件(如python),因为在系统的环境变量中,path中没有该软件的安装路径: 2.通过pip安装软件:pip install 文件路径\文件全名,将软件安装在指定 ...

  8. Spring中的线程池ThreadPoolTaskExecutor介绍

    前言: Java SE 5.0引入了ThreadPoolExecutor.ScheduledThreadPoolExecutor.Spring 2.x借助ConcurrentTaskExecutor和 ...

  9. centos7下搭建ceph luminous(12.2.1)--无网或网络较差

    本博客的主要内容是在centos7下搭建luminous,配置dashboard,搭建客户端使用rbd,源码安装ceph,最后给出一些较为常用的命令.本博客针对初次接触ceph的人群. 搭建环境: 主 ...

  10. java集合类(2)

    java集合的主要分为三种类型:JAVA集合位于 java.util包 Set(集) List(列表) Map(映射) arrays函数, equals():比较两个array是否相等. fill() ...