python flask 魔术方法

魔术方法 作用
init 对象的初始化方法
class 返回对象所属的类
module 返回类所在的模块
mro 返回类的调用顺序,可以找到其父类(用于找父类)
base 获取类的直接父类(用于找父类)
bases 获取父类的元组,按它们出现的先后排序(用于找父类)
dict 返回当前类的函数、属性、全局变量等
subclasses 返回所有仍处于活动状态的引用的列表,列表按定义顺序排列(用于找子类)
globals 获取函数所属空间下可使用的模块、方法及变量(用于访问全局变量)
import 用于导入模块,经常用于导入os模块
builtins 返回Python中的内置函数,如eval

拿BUGKU的题目来测试一下:

1. class

复制代码
".__class__

转换URL编码后:{{%27%27.class }}

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

2. base

复制代码
.__base__

就是查看它的上级类也就是父类

3. subclasses

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

复制代码
.__subclasses __() 

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

4. globals

复制代码
.__globals__

获取函数所属空间下可使用的模块、方法及变量(用于访问全局变量)

...

相关推荐
高级程序源6 小时前
django校园寻物通失物招领平台32261-计算机课程设计、毕业设计
vue.js·python·mysql·小程序·django·flask·课程设计
WeiXin_DZbishe6 小时前
基于springboot宠物领养系统-计算机毕设 附源码【课程设计】94217
vue.js·spring boot·python·django·php·课程设计
kimnoic7 小时前
Python数据库学习心得:SQLite、MySQL、PostgreSQL优缺点
开发语言·python
snhna7 小时前
向量数据库深度实战:从 HNSW 到 pgvector、Milvus 选型与 RAG 落地
数据库·人工智能·python·postgresql·milvus
必须得开心呀8 小时前
python编写带界面的软件,需要安装哪些插件
开发语言·python
Wx-bishekaifayuan8 小时前
express皖美特色农产品网售系统53118-计算机课程设计、毕业设计
人工智能·spring boot·后端·python·课程设计·express·旅游
青少儿编程课堂8 小时前
迪杰斯特拉(Dijkstra)算法:单源最短路与赛场路线规划
c++·python·算法·bfs·信息学竞赛
计算机编程指导师8 小时前
【计算机毕设推荐】基于Hadoop+Spark的公共交通运营数据分析与可视化系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·hadoop·python·计算机·数据分析·spark·交通
Wx-bishekaifayuan8 小时前
springboot汉中旅游服务平台41442-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
WeiXin_DZbishe9 小时前
基于springboot城市公交实时运营与调度系统-计算机毕设 附源码【课程设计】66173
java·vue.js·spring boot·后端·python·php·课程设计