Python学习笔记--2--面向对象编程
- 面向对象
- 类和装饰器@
-
#coding=gbkclass student:def __init__(self,name,grand):#初始化构造函数,self相当于java中的this,相当于一个student的一个对象self.name=nameself.grand=granddef introduce(self):print('hi ! i am '+self.name)print('my grade is : '+str(self.grand))def improve(self,amount):self.grand=self.grand+amountjim=student('jim',86) jim.introduce()jim.improve(10) 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()+2return add_b @add_a def b():return 1print(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=gbkfrom 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=59 while True:guess=dl.askinteger('number','what is your guess' )#提供一个用户输入的对话框,输入一个整型的数,传递给guessif guess==number:output='bingo! you guessed it right,but you do not win any prizes~!'mb.showinfo('output', output)breakelif 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')
-
- 类和装饰器@
转载于:https://www.cnblogs.com/Kobe10/p/5706613.html
Python学习笔记--2--面向对象编程相关推荐
- Python学习笔记:面向对象编程(4)
前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...
- Python学习笔记:面向对象编程(3)
前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...
- Python学习笔记:面向对象编程(2)
前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...
- Python学习笔记:面向对象编程(1)
前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...
- 【廖雪峰Python学习笔记】面向对象编程OOP
面向对象编程 OOP:Object Oriented Programming 程序的基本单元:对象 [ = 数据 + 操作数据的函数] [属性 + 方法] 三大特点:数据封装.继承和多态 OPP中的计 ...
- python学习笔记(七):面向对象编程、类
一.面向对象编程 面向对象--Object Oriented Programming,简称oop,是一种程序设计思想.在说面向对象之前,先说一下什么是编程范式,编程范式你按照什么方式来去编程,去实现一 ...
- 【python学习笔记】面向对象编程
面向对象编程 对象(object):表示客观世界问题空间中的某个具体事物,又表示软件系统解空间的中的基本元素 面向对象程序设计(Object-oriented programing, OP):是一种程 ...
- python学习笔记Day4 面向对象编程,文件操作,os模块,代码调试
一.traceback模块 错误日志可能用到 import tracebackwhile 1: # 捕获异常的顺序按照先父类后子类try:n1 = int(input('请输入一个被除数'))n2 = ...
- Python学习笔记三之编程练习:循环、迭代器与函数
Python学习笔记三之编程练习 1. 编程第一步 # 求解斐波纳契数列 #/user/bin/python3#Fibonacci series:斐波那契数列 #两个元素的总和确定了下一个数 a,b= ...
- Python学习笔记·交互式图形编程
Python学习笔记·交互式图形编程 注:在校计算机学生一名,菜鸟一枚,最近开始学习Python的基础知识希望有什么不对的地方各位大佬能够不令赐教! 课程是在中国大学MOOC上学的,有兴趣的同学可以自 ...
最新文章
- visual studio 2017 中默认无法开发 Android 8.0 及以上系统的解决方案
- linux开发log示例,RH124-log Linux日志(示例代码)
- Oracle数据库以及Oracle SQL Developer初体验
- c多线程并发处理方式_ElasticSearch 并发的处理方式:锁和版本控制
- OutOfMemoryError:Java堆空间–分析和解决方法
- 【 Grey Hack 】万金油脚本:常见端口修改Password
- 242.判断一个字符串是否为另一个的乱序 Valid Anagram
- Hexo+GitHub 快速搭建个人博客(一)---- 基本部署
- 查询:使用多表连接查询数据
- Android系统(127)---Android6.0存储中加入总内存和系统内存项和在西语下把,换成.
- fatal error C1083: Cannot open source file
- CentOS 上snmp的安装和配置
- 【出版直播】博客园征途系列,《设计模式——基于C#的工程化实现及扩展》定价修改...
- MATLAB - 线型、Marker点等属性的设置
- 银河麒麟安装Wine
- 勾股定理的毕达哥拉斯证明
- python解析sql字段血缘_SQL血缘关系分析
- Hex Fiend很强大
- R语言绘图-gganimate 让你的统计图动起来
- Pytest测试用例之setup与teardown方法(一)