当前位置:   article > 正文

python flask 魔术方法

python flask 魔术方法
魔术方法作用
_init_对象的初始化方法
_class_返回对象所属的类
_module_返回类所在的模块
_mro_返回类的调用顺序,可以找到其父类(用于找父类)
_base_获取类的直接父类(用于找父类)
_bases_获取父类的元组,按它们出现的先后排序(用于找父类)
_dict_返回当前类的函数、属性、全局变量等
_subclasses_返回所有仍处于活动状态的引用的列表,列表按定义顺序排列(用于找子类)
_globals_获取函数所属空间下可使用的模块、方法及变量(用于访问全局变量)
_import_用于导入模块,经常用于导入os模块
_builtins_返回Python中的内置函数,如eval

在这里插入图片描述

BUGKU的题目来测试一下:
在这里插入图片描述

1. class

".__class__
  • 1

转换URL编码后:{{%27%27.class}}
在这里插入图片描述

  • ”:引号表示字符串的意思
  • 加上__class__,就是查看它的类

2. base

.__base__
  • 1

在这里插入图片描述
就是查看它的上级类也就是父类

3. subclasses

由于object已经是最上面的父类了,所以我们查看它的子类

.__subclasses __() 
  • 1

看到有很多我们寻找我们能执行命令的类比如:os._wrap_close,然后它是在返回结果的第118位,所以我们在.__subclasses __()加上[117] //列表从0开始计算个数
在这里插入图片描述

4. globals

.__globals__
  • 1

获取函数所属空间下可使用的模块、方法及变量(用于访问全局变量)
在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/66588
推荐阅读
相关标签
  

闽ICP备14008679号