10、Python3 实战之ORM

2023-10-27

1、全局变量与局部变量

全局变量与局部变量两者的本质区别就是在于作用域
用通俗的话来理解的话,
全局变量是在整个py文件中声明,全局范围内都可以访问;
局部变量是在某个函数中声明的,只能在该函数中调用它,不能在超出范围的地方调用;
如果在函数内部定义与某个全局变量一样名称的局部变量,在函数内部对全局变量的修改后,修改的结果是无效的,全局变量并不会受到影响;
如果真的想要在函数体内修改全局变量的值,就要使用global关键字,使用global关键字就是告诉python编译器这个变量不是局部变量而是全局变量,其实有点像是"引用"的意思。

2、定制类

看到类似__slots__这种形如__xxx__的变量或者函数名就要注意,这些在Python中是有特殊用途的。

3、python super().__init__()

 

#描述字段的字段名,数据类型,键信息,默认值
class Field(object):

    def __init__(self, name, column_type, primary_key, default):
        self.name = name
        self.column_type = column_type
        self.primary_key = primary_key
        self.default = default

    # 输出数据表的信息:类名,字段类型,名字,是【定制类】,打印类实例!!!
    def __str__(self):
        return '<%s, %s:%s>' % (self.__class__.__name__, self.column_type, self.name)

# 字符串类型字段,继承自父类Field
class StringField(Field):

    def __init__(self, name=None, primary_key=False, default=None, ddl='varchar(100)'):
        super().__init__(name, ddl, primary_key, default)

strField = StringField('Bill')
print(strField)

 

输出:

<StringField, varchar(100):Bill>

4、变量

在Python中,变量名类似__xxx__的,也就是以双下划线开头,并且以双下划线结尾的,是特殊变量,特殊变量是可以直接访问的,不是private变量,所以,不能用__name____score__这样的变量名。

有些时候,你会看到以一个下划线开头的实例变量名,比如_name,这样的实例变量外部是可以访问的,但是,按照约定俗成的规定,当你看到这样的变量时,意思就是,“虽然我可以被访问,但是,请把我视为私有变量,不要随意访问”。

 

 

posted on 2018-03-21 19:22 Hello _ world 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/zwb8848happy/p/8619067.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

10、Python3 实战之ORM 的相关文章

随机推荐

  • @antv/g2踩坑记录

    自定义tooltip 需要先在绘图时配置自定义tooltip的需要的字段 chart point position value 1 shape pointer tooltip name value date name value date
  • 投资合伙人股份分配_创业者必看的合伙人股权分配细则

    惠学习 创业者必看的合伙人股权分配细则 惠学习 创业者必看的合伙人股权分配细则 2016 08 03 苏州高新区惠创业 苏州高新区惠创业 案例 真功夫 真功夫的纠纷大家应该比较了解 现在对它的生意还不影响 但是很遗憾它还没IPO 最主要的原
  • Linux配置Java环境

    使用jdk压缩包方式配置Java环境 1 上传jdk到linux 在linux中软件一般安装到 usr local目录中 2 将jdk解压 解压命令 tar zxvf jdk 8u301 linux x64 tar gz 将解压后的jdk改
  • git子模块无法下载

    用rt studio添加软件包时会克隆整个仓库 这个时候如果提交代码 就会出现一个警告 如果你强行提交上去 那么这部分代码不会同步 但是你去远程仓库查看时会有一个子模块 如果你clone下来 想去下载子模块时 会提示 No url foun
  • 【Mybatis】maven配置pom.xml时找不到依赖项(已解决)

    我在配置pom xml依赖时 会冒红 解决方法 1 settings gt maven目录 把maven路径改为自己的 具体操作在 Maven Maven安装 入门教程笔记 暮色 年华的博客 CSDN博客 这篇文章里 2 右击pom xml
  • 独立成分分析FastICA算法原理

    独立成分分析FastICA算法原理 首先对于d维的随机变量 x R d 1
  • 【Android取证篇】华为设备跳出“允许USB调试“界面方法的不同方法

    Android取证篇 华为设备跳出 允许USB调试 界面方法的不同方法 华为设备在鸿蒙OS3系统之后 部分设备启用 允许USB调试 方式会有所变化 再次做个记录 蘇小沐 1 实验环境 系统 版本 Windows 11 专业工作站版 22H2
  • scons编译protobuffer脚本代码

    scons编译protobuffer脚本代码 protoc py Google s Protoc builder Example will produce c output files in the src directory protoc
  • Python选基金(爬虫+策略)

    之前买基金都瞎买的 最近突然想可以用python来试试 综合基金类型 持仓 收益率 基金经理多维度综合考虑 看看能不能帮忙选比较优质的基金出来 整体策略 一 数据准备 1 1获得基金经理信息 import requests import t
  • Qt 的 Qss使用

    Qt 的 Qss 是一种用于定义用户界面的样式表语言 它可以用来定义控件的颜色 字体 边框 背景等样式 可以很方便的实现自定义的样式效果 Qss 的基本语法和 CSS 类似 主要是由选择器和样式属性构成 选择器 选择器用来指定要样式化的控件
  • SIP协议&开源SIP服务器搭建和客户端安装

    1 SIP SIP 是一个应用层的控制协议 可以用来建立 修改 和终止多媒体会话 例如Internet电话 SIP在建立和维持终止多媒体会话协议上 支持五个方面 1 用户定位 检查终端用户的位置 用于通讯 2 用户有效性 检查用户参与会话的
  • 如何防止token伪造、篡改、窃取

    Token的伪造 窃取和篡改的安全问题 伪造 forgery 指攻击者伪造一个token 使系统错误地认为这是一个合法的token 从而获得未经授权的访问权限 窃取 theft 指攻击者通过某种手段获取到了一个合法的token 然后利用这个
  • RKE部署高可用Kubernetes集群

    RKE简介 RKE全称Rancher Kubernetes Engine 是一个快速的 多功能的 Kubernetes 安装工具 通过RKE 我们可以快速的安装一个高可用K8S集群 RKE 支持多种操作系统 包括 MacOS Linux 和
  • 抢滩登陆服务器维护,Intel CPU 一家独大市场结束?AMD 成功抢滩登陆-控制器/处理器-与非网...

    曾经 在服务器 CPU 市场 Intel 一家独大 但过去两年 AMD 凭借空前成功的 Zen 核心 以代号为 Naples 的 EPYC 霄龙 处理器强势杀入 从最大的云环境到 AI 应用领域 再到百亿级超级计算中心 AMD EYPC 均
  • el-table合并表头、动态合并列、合并尾部合计

    在有些情况下 我们会有合并表头 合并列 合并尾部合计的需求 这篇文章是为了记录 如何进行合并 方便日后翻阅 效果图 el table合并表头 el table合并列 动态合并 el table合并尾部合计 el table合并表头的实现 这
  • pytorch开源吗?

    pytorch开源吗 PyTorch的前身是Torch 其底层和Torch框架一样 但是使用Python重新写了很多内容 不仅更加灵活 支持动态图 而且提供了Python接口 它是由Torch7团队开发 是一个以Python优先的深度学习框
  • vue-quill-editor 富文本编辑器上传视频

    vue quill editor 富文本编辑器上传视频 插入视频 设置工具栏中文标题 修改视频 标签为
  • 苹果发布全球首款5nm芯片A14!性能提升40%,新iPad Air率先搭载

    边策 贾浩楠 萧箫 杨净 发自 凹非寺 量子位 报道 公众号 QbitAI 也是罕见 苹果的新品发布会 新一代iPhone没亮相 倒是把最新最强的AI芯片发布了 没错 今天苹果没有发布iPhone 12 但是A14芯片还是意外亮相 集成11
  • 基于小程序+C#制作一个考试答题小程序

    基于小程序和C 语言 你可以使用微信小程序开发工具和Visual Studio进行开发 以下是开发考试答题小程序的基本步骤 需求分析和设计 首先 你需要明确考试答题小程序的功能和界面设计 例如 考试题目的类型 数量和难度 用户的身份验证 答
  • 10、Python3 实战之ORM

    10 Python3 实战之ORM 1 全局变量与局部变量 全局变量与局部变量两者的本质区别就是在于作用域用通俗的话来理解的话 全局变量是在整个py文件中声明 全局范围内都可以访问 局部变量是在某个函数中声明的 只能在该函数中调用它 不能在