首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

通过内置对象理解 Python(一)

当你想告诉 Python 解释器某个类没有定义某个操作符,就是在这个类的操作符定义中使用 NotImplemented 。...这些实际上不是 builtins 模块所特有的。这些属性存在于 Python 的每个模块的全局作用域中,它们是模块属性。包含了导入模块的相关信息。...因此,你可能会问,这些以 _frozen 命名模块是什么? 顾名思义——它们是“冻结模块”。 这两个模块的“真正”源代码实际上在 importlib.machinery 模块中。...__cached__ 当导入一个模块, __cached__ 属性存储该模块的已编译的 Python 字节码的缓存文件的路径。 你可能对 Python 的“编译”感到奇怪,没错。...然后,所导入的模块的 __cached__ 属性值为该 .pyc 文件。

48610
您找到你想要的搜索结果了吗?
是的
没有找到

Python 类与继承

www.cnblogs.com/wdliu/p/6757511.html https://blog.csdn.net/fjswcjswzy/article/details/105637086 在使用类名创建对象..., 做一些额外的操作,发生在类实例被创建完以后,它是实例级别的方法 继承关系 子类继承于父类,子类拥有其自身及父类的方法和属性,同名的子类方法和属性将会覆盖父类的方法和属性 class Parent:...: 'A' object has no attribute 'B' 静态方法 在定义,使用 @staticmethod 装饰器来进行修饰,无须传入 self 等参数即可创建方法。...,不同的是所有通过实例访问属性都会触发 __getattribute__ 方法,而当访问的属性不存在,会继续触发 __getattr__,也就是说 __getattribute__ 一定会在 __getattr...called # 'test2 not found' getattr(object, name[ ,default]) object:对象 name:参数名 dufault:默认返回值,如果不提供该参数,在没有对应属性

69840

一文教你读懂 Python 中的异常信息

AttributeError 当你访问一个对象的属性,但是这个属性没有在这个对象定义的时候,就会引发 AttributeError。...' object has no attribute 'b' AttributeError 的错误消息行告诉我们特定对象类型(在本例中为 int)没有访问的属性, 在这个例子中属性为 b。...ImportError 在使用 import 导入模块,如果要导入的模块找不到,或者从模块中导入模块中不存在的内容。...并没有太多的内容,但是,结合上面的错误信息,就可以解决这个问题。 NameError 当你引用了变量、模块、类、函数或代码中没有定义的其他名称,将引发 NameError。...这是因为 SyntaxError 是在 Python 尝试解析代码引发的,实际上代码并没有执行。

2.4K10

day21 01 包的初识

day21 01包的初识        包:把解决一类问题的模块放在同一个文件夹里面-----包(一个包里面通常会含有_init_.py文件(python2里面必须有),但是后面的就没有要求一定要有了)...要想生成这些文件,可执行以下代码: import os os.makedirs('glance/api') os.makedirs('glance/cmd') os.makedirs('glance/db') #创建三个目录...l=[] #创建一个列表,是为了下面将七个文件统一关闭 l.append(open('glance/_init_.py','w')) l.append(open('glance/api/_init_....#找不着 是会报错的,运行结果: Traceback (most recent call last): File "", line 23, in AttributeError...平时我们导入一个模块,就会执行这个模块,但是导入一个包,它不会执行里面的方法,而是默认执行它里面的_init_.py文件,可以在_init_.py文件里面放一些内容, 并执行 import glance

24120

【Python 入门第十八讲】Try Except的应用

: 如果命中文件末尾而不读取任何数据ImportError: 如果找不到模块语法错误当未遵循该语言的正确语法,就会引发语法错误。...例如,当我们将任何数字除以零,会引发 ZeroDivisionError 异常,或者当我们导入不存在的模块,会引发 ImportError。...AssertionError语句失败发生AttributeError属性分配失败,会发生此事件。ImportError当找不到导入的模块,会发生此事件。...print()示例 2:从超类异常派生错误当模块需要处理多个不同的错误时,会创建超类异常。执行此操作的常见方法之一是为该模块定义的异常创建基类。...此外,还定义了各种子类,以便为不同的错误条件创建特定的异常类。

24220

【Python】已解决报错:AttributeError: module ‘json‘ has no attribute ‘loads‘解决办法

但是运行了如下代码的时候,它竟然提示:AttributeError: module ‘json’ has no attribute ‘loads’,翻译成汉语的意思是:属性错误:json模块没有loads...然而,在使用json模块,开发者可能会遇到AttributeError: module ‘json’ has no attribute 'loads’的错误。...模块,使用了错误的导入方式。...查找首先检查 sys.modules (保存了之前import的类库的缓存),如果module没有被找到,则按照下面的搜索路径查找模块: .py 所在文件的目录 PYTHONPATH 中的目录 python...所以以后需要注意以下几点: 确保在导入模块使用正确的模块名,避免使用错误的模块或拼写错误。 在调用模块属性或方法,使用正确的属性或方法名,避免拼写错误。

8310

用于监控USB设备连接事件的取证工具

,可以自动化该过程,请参阅安装部分)创建虚拟环境(可选)并从内部运行pip: ~/usbrip$ python3 -m venv venv && source venv/bin/activate (venv.../installers/install.sh,可以使用一些额外的功能: 自动创建虚拟环境; 存储模块变为可用:你可以设置crontab job,按计划备份USB事件(你可以在usbrip/cron/usbrip.cron...启用-s开关后,不仅会安装usbrip项目,还会创建受信任的USB设备,历史记录和违规存储列表。 注意:在安装期间使用-s选项,请确保系统日志至少包含一个外部USB设备条目。...当输出流不是终端stdout(如 | 或 >),输出中将没有ANSI转义字符,因此可以随意使用它。...到目前为止,usbrip还没有办法处理这种情况,也就是说它将把一对具有相同SN(如果存在)的设备视为与可信设备列表和gen_auth模块相同的设备。

2.2K30

教你如何使用 flask 框架在浏览器打印 hello world

venv模块捆绑了Python 3 以创建虚拟环境。如果您使用的是现代版本的Python,则可以继续下一节。 如果您使用的是Python 2,请参阅先安装virtualenv。...创建环境 如果你正在使用Python3,虚拟环境已经成为内置模块,可以直接通过如下命令来创建它: python -m venv venv ? ?...使用这个命令来让Python运行venv包,它会创建一个名为venv的虚拟环境。命令中的第一个“venv”是Python虚拟环境包的名称,第二个是要用于这个特定环境的虚拟环境名称。...当你导入一个包,__init__.py会执行并定义这个包暴露给外界的属性。...app变量被定义为__init__.py脚本中的Flask类的一个实例,以至于它成为app包的属性。 其二,routes模块是在底部导入的,而不是在脚本的顶部。

1.3K30

手把手带你发布自己的专属模块

那么该如何发布这个模块呢?这就是接下来我要分享的内容。 01.模块 -> 压缩包 我们要将模块制作成压缩包,这里一共有 3 个步骤: 创建 setup.py; 构建模块; 生成发布压缩包。.../3/distutils/apiref.html setup.py 创建完成以后,我们可以在解释器中输入下面的代码来「构建模块」: python3 setup.py build 回车以后会出现如下的提示信息...有没有很熟悉呢?对啦,这就是我们在文章刚开始给 setup 函数传递的参数。这个文件的好处是什么呢?就是当其他人拿到我们开发的模块,能够很清楚的知道模块的开发者是谁,怎么才能联系到开发者。...口说无凭,我们来验证一下,在终端中进入 ipython,然后导入该模块,如果没有报错,就证明安装成功: ?...下面我教大家一个方法能够快速的找到安装目录: 首先我们进入ipython 的交互解释器中,导入该模块,每个模块其实都自带一个内置属性 __file__,这个就可以查看模块的完整路径: ?

34810

深入探讨 Python 的 import 机制:实现远程导入模块

命名空间包并不一定会直接对应到文件系统中的对象;它们有可能是无实体表示的虚拟模块。 命名空间包的 __path__ 属性不使用普通的列表。...在这种情况下,Python 将为顶级的 parent 包创建一个命名空间包,无论是它本身还是它的某个子包被导入。...你只要: 定义一个实现了 load_module 方法的类 对与导入有关的属性(点击查看详情)进行校验 创建模块对象并绑定所有与导入相关的属性变量到该模块上 将此模块保存到 sys.modules 中(...模块的规格说明会作为模块对象的 __spec__ 属性对外公开。有关模块规格的详细内容请参阅 ModuleSpec。...对于最高层级模块,第二个参数为 None,但对于子模块或子包,第二个参数为父包 __path__ 属性的值。如果相应的 __path__ 属性无法访问,将引发 ModuleNotFoundError。

62530

flask入门补充

那么Flask是国外开发的框架,没有考虑到中文编码,那么我们就需要自己配置   那么在访问页面的时候会有 get 请求和post  请求。在下边我也会提到。...app.config['JSON_AS_ASCII'] = False # debug开启模式 # app.config['DEBUG'] = True # 第二种方式 # 从外部引入配置文件,用于加载,也就是需要新创建一个...# # C:\Users\自己的路径,我找的是绝对路径 \www\web\config.ini 从环境变量中来配置加载 # 我的是在win-10下搭建的 # 计算机-属性-更改设置-高级-环境变量-新建...return '网页不存在或者已经删除'   那么对于没有接触过编程的朋友们来说。有一款很强大的短信。...没有用Linux, 那么在创建文件目录下种不要有中文。   如果安装不上。

52710

Python中的命名空间和作用域(2)

Python将其作为一个模块来实现。 Python提供了名为globals()和locals()的内置函数。这些内置函数允许你访问全局和本地的命名空间字典。...类似地,第9行上的语句修改了loc所指向的副本中的键‘s'的值,但这对实际本地名称空间中的``s的值没有影响。 这是一个微妙的区别,但如果你不记住的话,可能会给你带来麻烦。...print(x) 5 ... 6 7 >>> f() 8 40 9 >>> x 10 20 当f()在第3行执行x=40,它会创建一个新的本地引用,该引用指向一个值为40的整数对象...如果全局声明中指定的名称在函数启动不存在于全局作用域中,则global语句和赋值的组合将创建这一名称: 1 >>> y 2 Traceback (most recent call last):...y = 20 10 ... 11 12 >>> g() 13 >>> y 14 20 当g()开始运行时,在全局作用域内没有名为y的对象,但是g()在第8行使用global y 语句创建了一个这样的对象

1K20
领券