面向对象初始 1.1 面向过程编程vs函数式编程 函数编程较之面向过程编程最明显的两个特点: 1,减少代码的重用性. 2,增强代码的可读性. 1.2 函数式编程vs面向对象编程 面向对象编程:是一类相似功能函数的集合,使你的代码更清晰化,更合理化. 面向对象的程序设计的核心是对象(上帝式思维),要理解对象为何物,必须把自己当成上帝,上帝眼里世间存在的万物皆为对象,不存在的也可以创造出来. 类:就是具有相同属性和功能的一类事物. 对象:就是类的具体表现,类的实例化. ⾯向对象思维, 要⾃⼰建立对象…
面向对象之继承 1.什么是面向对象的继承 继承(英语:inheritance)是面向对象软件技术当中的一个概念. 通俗易懂的理解是:子承父业,合法继承家产 专业的理解是:子类可以完全使用父类的方法和属性 如果一个类A"继承自"另一个类B,则把类A称为类B的子类(或派生类),把类B称为父类(或超类或基类) 继承可以使得子类具有父类的各种属性和方法,而不需要再次编写相同的代码.在令子类继承父类的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类的原有属性和方法,使其获得与父类不同的功能…
一. 数据库初始 1. 为什么要有数据库? ​ 先来一个场景: ​ 假设现在你已经是某大型互联网公司的高级程序员,让你写一个火车票购票系统,来hold住十一期间全国的购票需求,你怎么写? 由于在同一时段抢票的人数太多,所以你的程序不可能写在一台机器上,应该是多台机器一起分担用户的购票请求. 那么问题就来了,票务信息的数据存在哪里?存在文件里么? 如果存储在文件里,那么存储在哪一台机器上呢?是每台机器上都存储一份么? 首先,如果其中一台机器上卖出的票另外两台机器是感知不到的, 其次,是如果我们将数…
面向对象之 反射,双下方法 1. 反射 计算机科学领域主要是指程序可以访问.检测和修改它本身状态或行为的一种能力(自省) python面向对象中的反射:通过字符串的形式操作对象相关的属性.python中的一切事物都是对象(都可以使用反射) 主要适用于四种情况: 1.对对象的反射 class Foo: f = '类的静态变量' def __init__(self,name,age): self.name=name self.age=age def say_hi(self): print('hi,%…
1.面向对象之三大特性 1.1封装 封装:就是把一堆代码和数据,放在一个空间,并且可以使用 对于面向对象的封装来说,其实就是使用构造方法将内容封装到 对象 中,然后通过对象直接或者self间接获取被封装的内容. 例如:函数,把一些类似功能封装在一个函数中 class Student: def __init__(self,name,sex): self.name = name self.sex = sex zdr = Student('周道镕','Handsome_Girl') print(zdr…
面向对象之:类空间问题以及类之间的关系 1.从空间角度研究类 1.何处添加对象属性 class A: def __init__(self,name): self.name = name def func(self,sex): self.sex = sex # 类外面可以: obj = A('barry') obj.age = 18 print(obj.__dict__) # {'name': 'barry', 'age': 18} # 类内部也可以: obj = A('barry') # __i…
1.私有成员公有成员 1.1 类的私有属性 # class A: # # name = '周道镕' # __name = 'zdr' # 私有类的属性 # # def func(self): # print(self.name) # print(self.__name) # obj = A() # obj.func() 结论:在类的内部可以访问 # class A: # name = '周道镕' # __name = 'zdr' # 私有类的属性 # # def func(self): # pa…
1.函数 1.1 认识函数 定义一个事情或者是功能,等到需要的时候直接去用就好了.那么这里定义东西就是一个函数 函数:对代码块和功能的封装和定义 函数的好处: 减少代码的重复性 代码可读性高 将功能进行封装(造工具) ​ 1.2 定义函数 ​ 结构: def 函数名(): 函数体 ​ def 关键字 ​ func 函数名 ​ () 传递参数 ​ : 语句结束 ​ 函数体:就是函数被执行之后要执行的代码 ​ 1.3 调用函数 ​ 使用函数名加小括号就可以调用了 写法:函数名() 这个时候函数的函数…
1.整理函数相关知识点 2.写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者. def func(lst): lst = lst[1::2] return lst 传列表 lst = [1,2,3,4,5,6,7,8,9] f = func(lst) print(f) 传元组 tu = (1,2,3,4,5,6,7,8,9) f = func(tu) print(f) 3.写函数,判断用户传入的对象(字符串.列表.元组)长度是否大于5. def my_l…
JS代码的引入 方式1: <script> alert('兽人永不为奴!') </script> 方式2:外部文件引入 src属性值为js文件路径 <script src="test.js"></script> 变量声明 变量名是区分大小写的. 推荐使用驼峰式命名规则.首字母大写 保留字不能用做变量名. 声明前要加var关键字. var a = 1; 加var定义的变量是全局变量,在函数里定义会是局部变量 不加定义的变量不管在哪,都是全局…