一图看懂 markupsafe 模块:为 Python 实现 XML/HTML/XHTML 标记安全字符串,资料整理+笔记(大全)

news2024/12/25 13:21:00

本文由 大侠(AhcaoZhu)原创,转载请声明。
链接: https://blog.csdn.net/Ahcao2008

Alt

一图看懂 markupsafe 模块:为 Python 实现 XML/HTML/XHTML 标记安全字符串,资料整理+笔记(大全)

  • 🧊摘要
  • 🧊模块图
  • 🧊类关系图
  • 🧊模块全展开
    • ☘️【markupsafe】
    • 🔵统计
    • 🔵常量
    • 🔵模块
      • 🌿1 functools
      • 🌿2 re
      • 🌿3 string
      • 🌿4 typing
      • 🌿5 markupsafe._speedups
    • 🔵函数
      • 🌿6 _simple_escaping_wrapper(name: str) -> Callable[..., ForwardRef('Markup')]
      • 🌿7 _escape_argspec(obj: ~_ListOrDict, iterable: Iterable[Any], escape: Callable[[Any], markupsafe.Markup]) -> ~_ListOrDict
    • 🔵类
      • 🌿8 markupsafe.Markup
        • method
        • 1 capitalize()
        • 2 center()
        • 3 expandtabs()
        • 4 format(self, *args: t.Any, **kwargs: t.Any) -> "Markup":
        • 5 join(self, seq: t.Iterable[t.Union[str, "HasHTML"]]) -> "Markup":
        • 6 ljust()
        • 7 lower()
        • 8 lstrip()
        • 9 partition(self, sep: str) -> t.Tuple["Markup", "Markup", "Markup"]:
        • 10 replace()
        • 11 rjust()
        • 12 rpartition(self, sep: str) -> t.Tuple["Markup", "Markup", "Markup"]:
        • 13 rsplit(
        • 14 rstrip()
        • 15 split(
        • 16 splitlines(self, keepends: bool = False) -> t.List["Markup"]:
        • 17 strip()
        • 18 striptags(self) -> str:
        • 19 swapcase()
        • 20 title()
        • 21 translate()
        • 22 unescape(self) -> str:
        • 23 upper()
        • 24 zfill()
        • class method
        • 25 escape(cls, s: t.Any) -> "Markup":
      • 🌿9 markupsafe.EscapeFormatter
        • data
        • method
        • 2 format_field(self, value: t.Any, format_spec: str) -> str:
      • 🌿10 markupsafe._MarkupEscapeHelper
        • data
    • 🔵内嵌函数或方法
    • 🔵私有或局部
    • 🔵剩余
    • ☘️【functools】
    • ☘️【re】
    • ☘️【string】
    • ☘️【typing】
    • ☘️【markupsafe._speedups】

🧊摘要

  • 全文介绍python的 markupsafe 模块(为 Python 实现 XML/HTML/XHTML 标记安全字符串)、函数、类及类的方法和属性。
  • 它通过代码抓取并经AI智能翻译和人工校对。
  • 是一部不可多得的权威字典类工具书。它是系列集的一部分。后续陆续发布、敬请关注。【原创:AhcaoZhu大侠】

🧊模块图

markupsafe-module

markupsafe
	◆functools
	◆re
	◆string
	◆typing
	markupsafe._speedups

🧊类关系图

markupsafe-class

◆object
	markupsafe._MarkupEscapeHelper
	◆str
		markupsafe.Markup
	◆string.Formatter
		markupsafe.EscapeFormatter

🧊模块全展开

☘️【markupsafe】

markupsafe, fullname=markupsafe, file=markupsafe_init_.py

🔵统计

序号类别数量
4str5
6list1
8dict1
9module5
10class3
11function2
12builtin_function_or_method3
13residual6
14system10
15private7
16all26

🔵常量

🔵模块

🌿1 functools

functools, fullname=functools, file=functools.py

🌿2 re

re, fullname=re, file=re.py

🌿3 string

string, fullname=string, file=string.py

🌿4 typing

typing, fullname=typing, file=typing.py

typing模块:支持PEP 484定义的渐进式输入。

🌿5 markupsafe._speedups

_speedups, fullname=markupsafe._speedups, file=markupsafe_speedups.cp37-win_amd64.pyd

🔵函数

🌿6 _simple_escaping_wrapper(name: str) -> Callable[…, ForwardRef(‘Markup’)]

simple_escaping_wrapper(name: str) -> Callable[…, ForwardRef(‘Markup’)], module=markupsafe, line:20 at site-packages\markupsafe_init.py

🌿7 _escape_argspec(obj: ~_ListOrDict, iterable: Iterable[Any], escape: Callable[[Any], markupsafe.Markup]) -> ~_ListOrDict

_escape_argspec(obj: ~_ListOrDict, iterable: Iterable[Any], escape: Callable[[Any], markupsafe.Markup]) -> ~ListOrDict, module=markupsafe, line:251 at site-packages\markupsafe_init.py

各种字符串包装函数的帮助。

🔵类

🌿8 markupsafe.Markup

Markup, markupsafe.Markup, module=markupsafe, line:32 at site-packages\markupsafe_init_.py

可以安全地插入到HTML或XML文档中的字符串,因为它已被转义或标记为安全。
将对象传递给构造函数将其转换为文本并对其进行包装以标记为安全而不进行转义。
要转义文本,请使用 :meth:`escape` 类方法。
    >>> Markup("Hello, <em>World</em>!")
    Markup('Hello, <em>World</em>!')
    >>> Markup(42)
    Markup('42')
    >>> Markup.escape("Hello, <em>World</em>!")
    Markup('Hello &lt;em&gt;World&lt;/em&gt;!')
    
    这实现了一些框架使用的 ``__html__()`` 接口。传递一个实现 ``__html__()`` 的对象将包装该方法的输出,标记为安全。
    >>> class Foo:
    ...     def __html__(self):
    ...         return '<a href="/foo">foo</a>'
    ...
    >>> Markup(Foo())
    Markup('<a href="/foo">foo</a>')
    
    这是 :class:`str` 的子类。它具有相同的方法,但转义它们的参数并返回一个 ``Markup`` 实例。
    >>> Markup("<em>%s</em>") % ("foo & bar",)
    Markup('<em>foo &amp; bar</em>')
    >>> Markup("<em>Hello</em> ") + "<foo>"
    Markup('<em>Hello</em> &lt;foo&gt;')

method

1 capitalize()

kind=method class=Markup objtype=function

返回字符串的大写版本。
更具体地说,使第一个字符大写,其余字符小写。

2 center()

kind=method class=Markup objtype=function

返回长度为width的居中字符串。填充使用指定的填充字符(默认为空格)完成。

3 expandtabs()

kind=method class=Markup objtype=function

返回一个副本,其中所有制表符都使用空格展开。
如果没有给出tabsize,则假设tabsize为8个字符。

4 format(self, *args: t.Any, **kwargs: t.Any) -> “Markup”:

kind=method class=Markup objtype=function line:212 at …\lib\site-packages\markupsafe_init_.py

5 join(self, seq: t.Iterable[t.Union[str, “HasHTML”]]) -> “Markup”:

kind=method class=Markup objtype=function line:120 at …\lib\site-packages\markupsafe_init_.py

连接任意数量的字符串。
方法被调用的字符串被插入到每个给定字符串之间。
结果作为一个新字符串返回。
例如: '.'.join(['ab', 'pq', 'rs']) -> 'ab.pq.rs'』

6 ljust()

kind=method class=Markup objtype=function

返回长度为width的左对齐字符串。填充使用指定的填充字符(默认为空格)完成。

7 lower()

kind=method class=Markup objtype=function

返回转换为小写的字符串副本。

8 lstrip()

kind=method class=Markup objtype=function

返回删除前导空格的字符串副本。
如果给出了chars而不是None,则删除chars中的字符。

9 partition(self, sep: str) -> t.Tuple[“Markup”, “Markup”, “Markup”]:

kind=method class=Markup objtype=function line:202 at …\lib\site-packages\markupsafe_init_.py

10 replace()

kind=method class=Markup objtype=function

返回一个副本,其中所有出现的子字符串old都被new替换。
    count   要替换的最大出现次数。
            -1(默认值)表示替换所有的出现。
如果给出了可选参数count,则只替换第一个count出现。

11 rjust()

kind=method class=Markup objtype=function

返回长度为width的右对齐字符串。
填充使用指定的填充字符(默认为空格)完成。

12 rpartition(self, sep: str) -> t.Tuple[“Markup”, “Markup”, “Markup”]:

kind=method class=Markup objtype=function line:207 at …\lib\site-packages\markupsafe_init_.py

13 rsplit(

kind=method class=Markup objtype=function line:132 at …\lib\site-packages\markupsafe_init_.py

返回字符串中单词的列表,使用sep作为分隔符字符串。
    sep 分割字符串的分隔符。
        None(默认值)   表示根据任何空格进行分割,并从结果中丢弃空字符串。
    maxsplit    要执行的最大分割数。
                -1(默认值)表示没有限制。
分割是从字符串的末尾开始,一直到前面。

14 rstrip()

kind=method class=Markup objtype=function

返回字符串的副本,删除末尾的空格。
如果给出了chars而不是None,则删除chars中的字符。

15 split(

kind=method class=Markup objtype=function line:125 at …\lib\site-packages\markupsafe_init_.py

返回字符串中单词的列表,使用sep作为分隔符字符串。
    sep 分割字符串的分隔符。
        None(默认值)表示根据任何空格进行分割,并从结果中丢弃空字符串。
    maxsplit    要执行的最大分割数。-1(默认值)表示没有限制。

16 splitlines(self, keepends: bool = False) -> t.List[“Markup”]:

kind=method class=Markup objtype=function line:139 at …\lib\site-packages\markupsafe_init_.py

返回字符串中的行列表,在行边界处中断。
换行符不包括在结果列表中,除非给出了keepends并且为真。

17 strip()

kind=method class=Markup objtype=function

返回字符串的副本,去掉前导和尾部的空白。
如果给出了chars而不是None,则删除chars中的字符。

18 striptags(self) -> str:

kind=method class=Markup objtype=function line:155 at …\lib\site-packages\markupsafe_init_.py

:meth:`unescape`标记,删除标记,并将空白规范化为单个空格。
        >>> Markup("Main &raquo;	<em>About</em>").striptags()
        'Main » About'

19 swapcase()

kind=method class=Markup objtype=function

将大写字符转换为小写字符,小写字符转换为大写字符。

20 title()

kind=method class=Markup objtype=function

返回字符串的一个版本,其中每个单词都加了标题。
更具体地说,单词以大写字符开头,其余所有大小写字符都是小写。

21 translate()

kind=method class=Markup objtype=function

使用给定的翻译表替换字符串中的每个字符。
    table   转换表,它必须是Unicode序数到Unicode序数、字符串或None的映射。
表必须通过 __getitem__ 实现查找/索引,例如字典或列表。
如果此操作引发LookupError,则保持字符不变。映射到None的字符将被删除。

22 unescape(self) -> str:

kind=method class=Markup objtype=function line:144 at …\lib\site-packages\markupsafe_init_.py

将转义的标记转换回文本字符串。
这将用它们所表示的字符替换HTML实体。
        >>> Markup("Main &raquo; <em>About</em>").unescape()
        'Main » <em>About</em>'

23 upper()

kind=method class=Markup objtype=function

返回转换为大写的字符串副本。

24 zfill()

kind=method class=Markup objtype=function

在左边填充一个带零的数字字符串,以填充给定宽度的字段。
该字符串永远不会被截断。

class method

25 escape(cls, s: t.Any) -> “Markup”:

kind=class method class=Markup objtype=classmethod line:169 at …\lib\site-packages\markupsafe_init_.py

将函数转换为类方法。

🌿9 markupsafe.EscapeFormatter

EscapeFormatter, markupsafe.EscapeFormatter, module=markupsafe, line:223 at site-packages\markupsafe_init_.py

data

1 escape=<member ‘escape’ of ‘EscapeFormatter’ objects> kind:data type:member_descriptor class:<class ‘markupsafe.EscapeFormatter’>

method

2 format_field(self, value: t.Any, format_spec: str) -> str:

kind=method class=EscapeFormatter objtype=function line:230 at …\lib\site-packages\markupsafe_init_.py

🌿10 markupsafe._MarkupEscapeHelper

_MarkupEscapeHelper, markupsafe.MarkupEscapeHelper, module=markupsafe, line:262 at site-packages\markupsafe_init.py

用于:meth:`Markup.__mod__`的帮助。

data

1 escape=<member ‘escape’ of ‘_MarkupEscapeHelper’ objects> kind:data type:member_descriptor class:<class ‘markupsafe._MarkupEscapeHelper’>
2 obj=<member ‘obj’ of ‘_MarkupEscapeHelper’ objects> kind:data type:member_descriptor class:<class ‘markupsafe._MarkupEscapeHelper’>

🔵内嵌函数或方法

11 escape
12 escape_silent
13 soft_str

🔵私有或局部

14 _strip_comments_re re.compile(‘ ’, re.DOTALL)
15 _strip_tags_re re.compile(‘<.*?>’, re.DOTALL)
16 _simple_escaping_wrapper <function _simple_escaping_wrapper at 0x00000228935624C8>
17 _ListOrDict ~_ListOrDict
18 _escape_argspec <function _escape_argspec at 0x00000228935A31F8>
19 _MarkupEscapeHelper <class ‘markupsafe._MarkupEscapeHelper’>
20 _speedups <module ‘markupsafe._speedups’ from ‘…\lib\site-packages\markupsafe\_speedups.cp37-win_amd64.pyd’>

🔵剩余

21 doc
22 loader <_frozen_importlib_external.SourceFileLoader object at 0x000002289355C8C8>
23 spec ModuleSpec(name=‘markupsafe’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x000002289355C8C8>, origin=‘…\lib\site-packages\markupsafe\init.py’, submodule_search_locations=[‘…\lib\site-packages\markupsafe’])
24 _strip_comments_re re.compile(‘ ’, re.DOTALL)
25 _strip_tags_re re.compile(‘<.*?>’, re.DOTALL)
26 _ListOrDict ~_ListOrDict

☘️【functools】

functools, fullname=functools, file=functools.py

☘️【re】

re, fullname=re, file=re.py

☘️【string】

string, fullname=string, file=string.py

☘️【typing】

typing, fullname=typing, file=typing.py

☘️【markupsafe._speedups】

_speedups, fullname=markupsafe._speedups, file=markupsafe_speedups.cp37-win_amd64.pyd

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/530739.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JAVA】Java中的类型转换

目录 1.自动类型转换&#xff08;隐式转换&#xff0c;小类型转换为大类型&#xff09; 2.强制类型转换&#xff08;显示转换&#xff0c;大类型转换为小类型&#xff09; 3.小于4字节的类型转换问题 3.1 byte<->int 3.2 char<->int 3.3 String<->int …

深入理解Java虚拟机:JVM高级特性与最佳实践-总结-4

深入理解Java虚拟机&#xff1a;JVM高级特性与最佳实践-总结-4 垃圾收集器与内存分配策略经典垃圾收集器Serial Old收集器CMS收集器Garbage First收集器 垃圾收集器与内存分配策略 经典垃圾收集器 Serial Old收集器 Serial Old是Serial收集器的老年代版本&#xff0c;它同样…

Liunx基础命令 - find命令

find命令 – 根据路径和条件搜索指定文件 find命令的功能是用于根据给定的路径和条件查找相关文件或目录&#xff0c;参数灵活方便&#xff0c;且支持正则表达式&#xff0c;结合管道符后能够实现更加复杂的功能&#xff0c;是Linux系统运维人员日常工作必须掌握的命令之一。 …

跟小枫社长学建站

该文章为看视频时的一些笔记&#xff0c;完整版可以看小枫社长的视频 小枫社长视频原址 一、租云服务器 腾讯云阿里云 阿里云对控制台进行了全面升级&#xff0c;在首页使用了新的设计方案&#xff0c;云服务器ECS位置如下&#xff0c;点击左上角目录即可。 二、创建实例 云…

牛客网面试必刷:BM22 比较版本号

牛客网面试必刷&#xff1a;BM22 比较版本号 前言一、解法1&#xff1a;分割截取 前言 牛客项目发布项目版本时会有版本号&#xff0c;比如1.02.11&#xff0c;2.14.4等等 现在给你2个版本号version1和version2&#xff0c;请你比较他们的大小 版本号是由修订号组成&#xf…

三十三、微服务,SpringCloud架构

1、微服务架构 1.1 单体应用架构 将项目所有模块(功能)打成jar或者war&#xff0c;然后部署一个进程 优点: 1:部署简单:由于是完整的结构体&#xff0c;可以直接部署在一个服务器上即可。 2:技术单一:项目不需要复杂的技术栈&#xff0c;往往一套熟悉的技术栈就可以完成开发。…

JAVA8的新特性——Stream

JAVA8的新特性——Stream 在这个深夜写下这篇笔记&#xff0c;窗外很安静&#xff0c;耳机里是《季节更替》&#xff0c;我感触还不是很多&#xff0c;当我选择封面图片的时候才发现我们已经渐渐远去&#xff0c;我们都已经奔赴生活&#xff0c;都在拼命想着去换一个活法&#…

Kubernetes 二进制部署高可用集群

概述 在私有局域网内完成Kubernetes二进制高可用集群的部署 ETCD Openssl > ca 证书 Haproxy Keepalived Kubernetes 主机规划 序号名字功能VMNET 1备注 1备注 2备注 3 备注 4备注 50orgin界面192.168.164.10haproxykeepalived1reporsitory仓库192.168.164.16yum 仓库re…

哈工大C语言大作业-学生成绩管理系统

哈工大C语言大作业-学生成绩管理系统 完整项目地址&#xff1a;https://github.com/944613709/Student-Performance-Management-System-ByC 说明 l 设计了学生成绩管理系统&#xff0c;来实现对于学生数据的录入统计等各个功能l 进入主菜单之前执行音效播放l menu主菜单中显…

C语言基础知识:C语言中的控制语句

目录 1. 条件判断语句 if(…) {…} if(…) {…} else {…} if(…) {…} else if(…) {…} … else if(…) {…} else {…} switch() {case …: …; case …: …; … default: …;} 2、循环语句 while语句 do while语句 for语句 3、循环体中的跳转语句 break语句。 c…

consul集群部署-linux

一.前言 1. Consul架构 consul是分布式、高可用的系统&#xff0c;下图是单数据中心的部署架构 2. Consul特性 服务发现&#xff1a;解决在分布式环境中&#xff0c;如何找到可用的服务地址的问题&#xff0c;支持通过DNS和HTTP查询服务地址。健康检查&#xff1a;定时监控服务…

如何正确学习网络安全(黑客)?看到就是赚到!

一、前言 本人10 年工作经验&#xff0c; 擅长 Web 安全攻防、渗透领域&#xff0c; 在金融领域的安全有丰富的实战经验。从事在线教育 3 年多培养学员过万&#xff0c;讲解清晰透彻&#xff0c;课程干货内容多&#xff0c;辅导学员耐心细致 那我们该如何正确学习网络安全&am…

[学习笔记] [机器学习] 5. 逻辑回归(逻辑回归、混淆矩阵、分类评估指标、ROC曲线、AUC指标、类别不均衡问题)

视频链接数据集下载地址&#xff1a;无需下载 本文学习目标&#xff1a; 知道逻辑回归的损失函数、优化方法知道逻辑回归的应用场景应用LogisticRegression实现逻辑回归预测知道精确率、召回率等指标的区别知道如何解决样本不均衡情况下的评估会绘制ROC曲线图形 1. 逻辑回归…

Linux——Linux的基本指令

作者&#xff1a;几冬雪来 时间&#xff1a;2023年5月15日 内容&#xff1a;Linux基本指令讲解 目录 前言&#xff1a; 1. 什么是操作系统&#xff1a; 2.Linux操作系统&#xff1a; 3.Linux程序&#xff1a; 4.Linux基本指令&#xff1a; 1.ls&#xff1a; 作用&a…

Java基础 关键字与标识符

关键字(keyword) 定义:被 Java 语言赋予了特殊含义&#xff0c;用做专门用途的字符串(或单词) 这些单词已经被 Java 定义好 了。 特点:全部关键字都是小写字母。 关键字比较多&#xff0c;不需要死记硬背&#xff0c;学到哪里记到哪里即可。官方地址 1. 关键字一共 50 个&…

linux bonding 技术

文章目录 背景简介目录1. Bonding驱动简介1.1 配置并编译支持bonding的内核1.2 安装ifenslave控制工具 2. Bonding驱动选项3. 配置Bonding设备3.1 使用Sysconfig配置3.1.1 利用Sysconfig使用DHCP3.1.2 利用Sysconfig配置多个Bonds 3.2 使用Initscripts配置3.2.1 利用Initscript…

Linux篇3

Shell常用命令 0. Shell介绍1. 帮助命令1.0 help&#xff1a;获取内置命令帮助信息1.1 man&#xff1a;获取帮助信息 2. 文件目录相关2.1 pwd&#xff1a;打印当前工作目录的绝对路径2.2 cd&#xff1a;切换工作目录2.3 ls&#xff1a;列出目录内容2.4 mkdir&#xff1a;创建空…

Java小游戏之贪吃蛇

文章目录 一&#xff1a;窗口的绘制1.1 定义窗口类——SnakeGame1.2 设置窗口的参数1.3 启动main方法 二&#xff1a;窗口网格的绘制2.1 重写paint方法2.1.1 为什么要重写paint方法2.1.2 实现方式 2.2 Graphics2.3 设置网格线的参数 三&#xff1a;游戏物体父类的创建——Snake…

Swagger之集成与用法

简介 Swagger 是一个规范且完整的框架&#xff0c;用于生成、描述、调用和可视化 RESTful 风格的 Web 服务&#xff1b; 作用 1.接口的文档在线生成 2.功能测试 SpringBoot集成Swagger 1.创建一个普通的SpringBoot项目&#xff0c;支持web应用 2.pom中加入Maven依赖 <depe…

K8S的的就绪探针readinessProbe 和存活探针livenessProbe

就绪探针&#xff1a;readinessProbe 什么是readinessProbe readinessProbe&#xff1a; 当Pod需要开始接收流量时&#xff0c;“kubelet” 将定期检查 readinessProbe&#xff0c;如果该probe处于成功状态&#xff0c;则容器视为就绪&#xff0c;并将 Pod 标记为已就绪状态。…