1104课堂小结

exec

exec是什么

exec 是一个python的内置模块

exec的作用

可以把‘字符串形式’的python代码,添加到全局或者局部名称空间中

exec的使用方法

  1. 参数一:字符串形式的python代码
  2. 参数二:全局名称空间字典
  3. 参数三:局部名称空间字典

调用exec()

元类

什么是元类

元类就是类的类,Chinese类的类是type,type是所有类的类,所以type就是一个元类

元类的作用

元类可以帮我们控制类的创建和调用

怎么自定义创建元类

  1. 自定义一个元类,继承type,派生出自己的属性和方法
  2. 给需要使用的类,通过metaclass指定自定义好的元类

    如:class chinese(mataclass=‘自定义的元类‘)

优酷架构

ATM架构

优点:数据可以跨平台

缺点:不能存对象,也不能直接获取对象

? 不能通过“对象.属性”的方式存取值

? 存储速度比pickle慢

选课系统架构

优点:可以通过“对象.属性”的方式存取值

? 能存对象,也能直接获取对象

? 如:pickle

缺点: 不能跨平台

优酷架构

  • 数据层

    • 存储对象 ---->dict ----> json ----> Mysql
    • MySQL ----> Json ----> dict ----> 获取对象

ORM

对象关系映射----> 映射到数据库MYSQL中的数据表

类名 ----> 表名

对象 ----> 一条记录

对象.属性 ----> 字段

模拟Django的ORM ,为了将数据库的增删改查全部封装成一个个的方式,比如save,delete,update,select

ORM三个问题

  1. 解决代码冗余问题

    解决方式:继承一个父类,父类中定义一个__init__

  2. 无法预测每一张表中的字段是什么,无法通过父类的__init__解决问题

    解决方法:通过继承字典内部的__init__,可以接受任意个数的关键字参数

  3. 继承字典的类实例化的对象,无法通过“对象.属性”的方式存取值

    解决方法:通过__setattr____getattr__来实现,让字典对象与普通对象一模一样,并且具备字典原有的特性

原文地址:https://www.cnblogs.com/faye12/p/11794065.html

时间: 2024-10-12 12:15:34

1104课堂小结的相关文章

2015-12-03IOS课堂小结

一.①int age = 20 如上int命名规范,int(大小写字符,数字,下划线)= ()  /括号里面的内容必须由字母开头 当有多个单词组成的变量名中,第一个单词小写,第二个单词首字母大写(往后的单词首字母大写),比如numberOfPeople,同时要见名知义. ②scanf :从终端接收输入 必须严格按照scanf的格式  scanf("   ",&参数):  参数必须是变量的地址,&表示取地址.引号之间不要轻易的区添加空格 get char:从终端一次接收一

0919课堂小结

目录 函数的定义 函数定义的三种方式 空函数 有参函数 无参函数 函数的返回值 return的特性: 函数的三种调用方式 函数的参数 形参 实参 可变长参数 可变长形参* 可变长实参* 函数的定义 函数就是工具, 定义函数方式为 def func(): # def 函数名(): pass # 代码块 函数定义的特性: 函数定义过程, 只检测语法, 不会执行代码, 只有调用时才会执行代码 函数定义的三种方式 空函数 空函数顾名思义就是一个空的函数, 什么代码都没有,它的作用就是占个位置, 在大项目

0929课堂小结

目录 random模块 numpy模块 创建numpy数组 numpy数组的常用属性 获取numpy二数组行列数 切割numpy数组 numpy数组元素替换 numpy数组的合并 numpy常用函数 matplotlib模块 基本的核心使用方法 条形图 直方图 折线图 散点图+直线图 pandas模块 random模块 常用于生成随机数 import random # 大于0且小于1之间的小数 print(random.random()) # 0.9704044132949314 # 大于等于1

1009课堂小结

什么是面向对象 面向对象指的是一门编程思想. # 面向过程编程 核心是"过程"二字,过程指的是做事情的步骤,即先做什么再做什么 基于该编程思想编写程序,就好比一条工厂流水线,一种机械式的思维方式. 优点: 逻辑清晰,复杂的问题流程化,进而简单化. 缺点: 可扩展性差. 面向对象编程 核心是"对象"二字,对象指的是特征与技能的结合体. 基于该编程思想编写程序,就好比在创造世界,一种上帝式的思维方式. 优点: 可扩展性高. 缺点: 编写程序的复杂程度要远高于面向过程编程

1031课堂小结

目录 python 操作mysql 安装pymysql 模块 sql注入问题 产生的原因 解决的方法 连接 查 增 修 删 索引 使用索引的作用 索引的本质 索引的底层原理 索引的种类 索引的创建 主键索引 唯一索引 普通索引 索引的优缺点 不会命中索引的情况 慢查询日志 查看慢SQL的相关变量 配置慢SQL的变量 python 操作mysql 安装pymysql 模块 pip install pymysql sql注入问题 输入用户名:qaa ' or 1=1 # 输入密码:dasdasdsa

1115课堂小结

目录 JavaScript 注释 js的引入方式 js里面的变量 js变量的命名规范 js常量 js中的数据类型 运算符 算数运算符 比较运算符 逻辑运算符 赋值运算符 三元运算符 流程控制 if-else if-else else-if switch for while 函数 无参函数 有参函数 匿名函数 立即执行函数 箭头函数 函数的全局变量和局部变量 自定义对象 Date对象 json对象 RegExp对象 JavaScript 是前端的一门编程语言 注释 // 单行注释 /* 多行注释1

1217课堂小结

目录 一.表单指令 二.条件指令 条件指令案例(重点) 三.循环指令 循环指令案例: 四.分隔符 五.过滤器 六.计算属性 七.监听属性 八.冒泡排序 九.斗篷指令 一.表单指令 语法:v-model = "变量",v-model绑定的变量控制的是表单元素的value值. 普通表单元素:用v-model直接绑定变量控制value值. 单选框:以name进行分组,绑定的值为单选框的value值. 单一复选框:v-model绑定的值为true或false. 多个复选框:v-model绑定的

软件项目管理与素质拓展-2.3项目管理是残缺的美

2.3.1 路易10世的地牢 课堂讨论2?1 路易10世的地牢 你是路易10世的俘虏.他要给自己的城堡增加三个新地牢,让你做一个规划.干得好就释放,干不好就终生监禁. 小地牢很难设计,要12周,但容易建成,1周即可: 中地牢设计要5周,施工要6周: 大地牢设计只要1周,但建造要用9周: 每种地牢必须设计全部完成后才能着手建造: 你有远道而来的一个设计师和一个建筑师: 设计师不会建造而建筑师不会设计. 问:要建好这三个地牢,你该如何规划? 首先,我们认真分析下地牢建造中的“项目三角形”有什么特点,

金蝶K3商业智能免费版财务分析(下)课程系列开课了

上周刚听完奥威Powerbi的金蝶K3商业智能免费版针对财务分析的课程还意犹未尽的同学,这节课精彩继续!讲师为我们带来基于金蝶K3商业智能免费版的数据分析教学下篇——资产负债分析和利润分析. 资产负债表和利润表,两个财务报表中最重要的报表,在Power-BI平台上也能分析自如?这种技能又该怎么实现?这节课讲师为你详细解读. 讲师介绍:黄沛霓 现任奥威软件BI实施顾问,擅长SqlServers.ETL和数据建模,熟悉各大主流ERP软件.财务高级指标的计算和分析. 直播时间:2017年3月15日晚上