一图看懂 pkg_resources 模块:包资源API,资料整理+笔记(大全)

这篇具有很好参考价值的文章主要介绍了一图看懂 pkg_resources 模块:包资源API,资料整理+笔记(大全)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

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

一图看懂 pkg_resources 模块:包资源API,资料整理+笔记(大全)

🧊摘要

  • 全文介绍python的 pkg_resources 模块(包资源API)、函数、类及类的方法和属性。
  • 它通过代码抓取并经AI智能翻译和人工校对。
  • 是一部不可多得的权威字典类工具书。它是系列集的一部分。后续陆续发布、敬请关注。【原创:AhcaoZhu大侠】

🧊模块图

一图看懂 pkg_resources 模块:包资源API,资料整理+笔记(大全)

pkg_resources
	◆pkgutil
	◆plistlib
	◆email
	◆_imp
	pkg_resources.extern
		pkg_resources._vendor.pyparsing
			◆sre_constants
			◆pprint
	pkg_resources._vendor
	pkg_resources._vendor.appdirs
		◆win32com
	pkg_resources._vendor.packaging
		pkg_resources._vendor.packaging.__about__
		pkg_resources.extern.packaging._structures
		pkg_resources.extern.packaging.version
		pkg_resources._vendor.packaging._manylinux
		pkg_resources._vendor.packaging._musllinux
			◆contextlib
		pkg_resources.extern.packaging.tags
		pkg_resources.extern.packaging.utils
		pkg_resources.extern.packaging.specifiers
		pkg_resources.extern.packaging.markers
		pkg_resources.extern.packaging.requirements

🧊类关系图

一图看懂 pkg_resources 模块:包资源API,资料整理+笔记(大全)

◆object
	◆BaseException
		◆Exception
			◆RuntimeError
				pkg_resources.ExtractionError
			◆ValueError
				pkg_resources.extern.packaging.markers.InvalidMarker
				pkg_resources.extern.packaging.markers.UndefinedComparison
				pkg_resources.extern.packaging.markers.UndefinedEnvironmentName
				pkg_resources.extern.packaging.requirements.InvalidRequirement
					pkg_resources.RequirementParseError
				pkg_resources.extern.packaging.specifiers.InvalidSpecifier
				pkg_resources.extern.packaging.utils.InvalidSdistFilename
				pkg_resources.extern.packaging.utils.InvalidWheelFilename
				pkg_resources.extern.packaging.version.InvalidVersion
			◆Warning
				◆RuntimeWarning
					pkg_resources.PEP440Warning
				pkg_resources.PkgResourcesDeprecationWarning
			pkg_resources.ResolutionError
				pkg_resources.DistributionNotFound
				pkg_resources.UnknownExtra
				pkg_resources.VersionConflict
					pkg_resources.ContextualVersionConflict
			pkg_resources._vendor.pyparsing.ParseBaseException
				pkg_resources._vendor.pyparsing.ParseException
				pkg_resources._vendor.pyparsing.ParseFatalException
					pkg_resources._vendor.pyparsing.ParseSyntaxException
			pkg_resources._vendor.pyparsing.RecursiveGrammarException
	◆dict
		pkg_resources.ZipManifests
			pkg_resources.MemoizedZipManifests
		pkg_resources._ReqExtras
	pkg_resources.Distribution
		pkg_resources.DistInfoDistribution
		pkg_resources.EggInfoDistribution
	pkg_resources.EntryPoint
	pkg_resources.Environment
	pkg_resources.IMetadataProvider
		pkg_resources.IResourceProvider
	pkg_resources.NoDists
	pkg_resources.NullProvider
		pkg_resources.EggProvider
			pkg_resources.DefaultProvider
				pkg_resources.PathMetadata
			pkg_resources.ZipProvider
				pkg_resources.EggMetadata
		pkg_resources.EmptyProvider
			pkg_resources.FileMetadata
	pkg_resources.ResourceManager
	pkg_resources.WorkingSet
	pkg_resources._vendor.appdirs.AppDirs
	pkg_resources._vendor.packaging._manylinux._ELFFileHeader
	pkg_resources._vendor.pyparsing.OnlyOnce
	pkg_resources._vendor.pyparsing.ParseResults
	pkg_resources._vendor.pyparsing.ParserElement
		pkg_resources._vendor.pyparsing.ParseElementEnhance
			pkg_resources._vendor.pyparsing.FollowedBy
			pkg_resources._vendor.pyparsing.Forward
				pkg_resources._vendor.pyparsing._ForwardNoRecurse
			pkg_resources._vendor.pyparsing.NotAny
			pkg_resources._vendor.pyparsing.Optional
			pkg_resources._vendor.pyparsing.SkipTo
			pkg_resources._vendor.pyparsing.TokenConverter
				pkg_resources._vendor.pyparsing.Combine
				pkg_resources._vendor.pyparsing.Dict
				pkg_resources._vendor.pyparsing.Group
				pkg_resources._vendor.pyparsing.Suppress
			pkg_resources._vendor.pyparsing._MultipleMatch
				pkg_resources._vendor.pyparsing.OneOrMore
				pkg_resources._vendor.pyparsing.ZeroOrMore
		pkg_resources._vendor.pyparsing.ParseExpression
			pkg_resources._vendor.pyparsing.And
			pkg_resources._vendor.pyparsing.Each
			pkg_resources._vendor.pyparsing.MatchFirst
			pkg_resources._vendor.pyparsing.Or
		pkg_resources._vendor.pyparsing.Token
			pkg_resources._vendor.pyparsing.CharsNotIn
			pkg_resources._vendor.pyparsing.CloseMatch
			pkg_resources._vendor.pyparsing.Empty
			pkg_resources._vendor.pyparsing.Keyword
				pkg_resources._vendor.pyparsing.CaselessKeyword
			pkg_resources._vendor.pyparsing.Literal
				pkg_resources._vendor.pyparsing.CaselessLiteral
			pkg_resources._vendor.pyparsing.NoMatch
			pkg_resources._vendor.pyparsing.QuotedString
			pkg_resources._vendor.pyparsing.Regex
			pkg_resources._vendor.pyparsing.White
			pkg_resources._vendor.pyparsing.Word
			pkg_resources._vendor.pyparsing._PositionToken
				pkg_resources._vendor.pyparsing.GoToColumn
				pkg_resources._vendor.pyparsing.LineEnd
				pkg_resources._vendor.pyparsing.LineStart
				pkg_resources._vendor.pyparsing.StringEnd
				pkg_resources._vendor.pyparsing.StringStart
				pkg_resources._vendor.pyparsing.WordEnd
				pkg_resources._vendor.pyparsing.WordStart
	pkg_resources._vendor.pyparsing._Constants
	pkg_resources._vendor.pyparsing._NullToken
	pkg_resources._vendor.pyparsing._ParseResultsWithOffset
	pkg_resources._vendor.pyparsing.pyparsing_common
	pkg_resources.extern.VendorImporter
	pkg_resources.extern.packaging._structures.InfinityType
	pkg_resources.extern.packaging._structures.NegativeInfinityType
	pkg_resources.extern.packaging.markers.Marker
	pkg_resources.extern.packaging.markers.Node
		pkg_resources.extern.packaging.markers.Op
		pkg_resources.extern.packaging.markers.Value
		pkg_resources.extern.packaging.markers.Variable
	pkg_resources.extern.packaging.markers.Undefined
	pkg_resources.extern.packaging.requirements.Requirement
		pkg_resources.Requirement
	pkg_resources.extern.packaging.specifiers.BaseSpecifier
		pkg_resources.extern.packaging.specifiers.SpecifierSet
		pkg_resources.extern.packaging.specifiers._IndividualSpecifier
			pkg_resources.extern.packaging.specifiers.LegacySpecifier
			pkg_resources.extern.packaging.specifiers.Specifier
	pkg_resources.extern.packaging.tags.Tag
	pkg_resources.extern.packaging.version._BaseVersion
		pkg_resources.extern.packaging.version.LegacyVersion
		pkg_resources.extern.packaging.version.Version
	◆tuple
		pkg_resources._vendor.packaging._manylinux._GLibCVersion
		pkg_resources._vendor.packaging._musllinux._MuslVersion
		pkg_resources.extern.packaging.version._Version

🧊模块全展开

☘️【pkg_resources】

pkg_resources, fullname=pkg_resources, file=pkg_resources_init_.py

☘️【pkg_resources.extern】

extern, fullname=pkg_resources.extern, file=pkg_resources\extern_init_.py

🔵统计

序号 类别 数量
4 str 4
5 tuple 1
6 list 1
8 dict 1
9 module 5
10 class 1
13 residual 3
14 system 9
16 all 16

🔵常量

🌿tuple

1 names (‘packaging’, ‘pyparsing’, ‘appdirs’)

🔵模块

🌿2 importlib

importlib, fullname=importlib, file=importlib_init_.py

🌿3 sys

sys, fullname=sys, file=

🌿4 pkg_resources._vendor.appdirs

appdirs, fullname=pkg_resources._vendor.appdirs, file=pkg_resources_vendor\appdirs.py

用于确定特定于应用程序的目录的实用程序。有关详细信息和用法,请[参阅](http://github.com/ActiveState/appdirs)。

🌿5 pkg_resources._vendor.packaging

packaging, fullname=pkg_resources.vendor.packaging, file=pkg_resources_vendor\packaging_init.py

🌿6 pkg_resources._vendor.pyparsing

pyparsing, fullname=pkg_resources._vendor.pyparsing, file=pkg_resources_vendor\pyparsing.py

pyparsing模块——定义和执行解析语法的类和方法
    pyparsing模块是创建和执行简单语法的另一种方法,与传统的lex/yacc方法或使用正则表达式相比。
    使用pyparsing,您不需要学习定义语法或匹配表达式的新语法-解析模块提供了一个类库,您可以使用这些类直接在Python中构造语法。
    下面是一个程序来解析“Hello, World!”(或任何形式的C{"<salutation>, <addressee>!"}),
    使用L{Word}, L{Literal}和L{and}元素(L{'+'<ParserElement。add >}运算符给出L{And}表达式,字符串自动转换为L{Literal}表达式):
        from pyparsing import Word, alphas
        # 定义问候语法
        greet = Word(alphas) + "," + Word(alphas) + "!"
        hello = "Hello, World!"
        print (hello, "->", greet.parseString(hello))
    程序输出如下内容:
        Hello, World! -> ['Hello', ',', 'World', '!']
    由于自解释的类名以及'+','|'和'^'操作符的使用,语法的Python表示非常可读。
    从L{ParserElement. parsestring <ParserElement返回的L{parserresults}对象。parseString>}可以作为嵌套列表、字典或带有命名属性的对象访问。
    pyparsing模块处理了一些在编写文本解析器时通常令人烦恼的问题:
        -额外或缺少空格(上述程序也将处理“Hello,World!”,“Hello,World!”等)
        -引号字符串
        -嵌入注释
    入门:
        -访问类L{ParserElement}和L{ParseResults}以查看大多数其他pyparsing类继承的基类。
        使用文档字符串示例如何:
            -从L{literal}和L{CaselessLiteral}类构造文字匹配表达式
            -使用L{Word}类构造字符组表达式
            -查看如何使用L{ZeroOrMore}和L{OneOrMore}类创建重复表达式
            -使用L{'+'< and >}, L{'|'<MatchFirst>}, L{'^'<Or>}和L{'&amp;'<Each>}运算符将简单表达式组合成更复杂的表达式
            -使用L{ParserElement.setResultsName}将名称与解析结果关联起来
            -在L{pyparsing common}命名空间类中找到更多有用的通用表达式

🔵类

🌿7 pkg_resources.extern.VendorImporter

VendorImporter, pkg_resources.extern.VendorImporter, module=pkg_resources.extern, line:5 at site-packages\pkg_resources\extern_init_.py

一个PEP 302元路径导入器,用于从根名称中查找可选供应商或其他自然安装的包。
property

1 search_path=<property object at 0x0000018AFF831EF8> kind:property type:property class:<class ‘pkg_resources.extern.VendorImporter’>

method
2 create_module(self, spec)

kind=method class=VendorImporter objtype=function line:51 at …\lib\site-packages\pkg_resources\extern_init_.py

3 exec_module(self, module)

kind=method class=VendorImporter objtype=function line:54 at …\lib\site-packages\pkg_resources\extern_init_.py

4 find_spec(self, fullname, path=None, target=None)

kind=method class=VendorImporter objtype=function line:57 at …\lib\site-packages\pkg_resources\extern_init_.py

返回供应商名称的模块规范。
5 install(self)

kind=method class=VendorImporter objtype=function line:64 at …\lib\site-packages\pkg_resources\extern_init_.py

将此导入器安装到 sys.meta_path ,如果还没有出现。
6 load_module(self, fullname)

kind=method class=VendorImporter objtype=function line:29 at …\lib\site-packages\pkg_resources\extern_init_.py

遍历搜索路径以定位和加载fullname。

☘️【pkg_resources._vendor】

_vendor, fullname=pkg_resources.vendor, file=pkg_resources_vendor_init.py

🔵统计

序号 类别 数量
4 str 4
6 list 1
8 dict 1
9 module 3
13 residual 3
14 system 9
16 all 12

🔵模块

🌿1 pkg_resources._vendor.appdirs

appdirs, fullname=pkg_resources._vendor.appdirs, file=pkg_resources_vendor\appdirs.py

🌿2 pkg_resources._vendor.packaging

packaging, fullname=pkg_resources.vendor.packaging, file=pkg_resources_vendor\packaging_init.py

🌿3 pkg_resources._vendor.pyparsing

pyparsing, fullname=pkg_resources._vendor.pyparsing, file=pkg_resources_vendor\pyparsing.py

☘️【pkg_resources._vendor.appdirs】

appdirs, fullname=pkg_resources._vendor.appdirs, file=pkg_resources_vendor\appdirs.py

☘️【pkg_resources._vendor.packaging】

packaging, fullname=pkg_resources.vendor.packaging, file=pkg_resources_vendor\packaging_init.py

☘️【pkg_resources._vendor.pyparsing】

pyparsing, fullname=pkg_resources._vendor.pyparsing, file=pkg_resources_vendor\pyparsing.py

☘️【win32com】

win32com, fullname=win32com, file=win32com_init_.py

☘️【pkg_resources._vendor.packaging.about】

about, fullname=pkg_resources.vendor.packaging.about, file=pkg_resources_vendor\packaging_about.py

🔵统计

序号 类别 数量
4 str 12
6 list 1
8 dict 1
13 residual 3
14 system 17
16 all 17

☘️【pkg_resources.extern.packaging._structures】

_structures, fullname=pkg_resources.extern.packaging._structures, file=pkg_resources_vendor\packaging_structures.py

🔵统计

序号 类别 数量
4 str 4
8 dict 1
10 class 2
13 residual 5
14 system 8
16 all 12

🔵类

🌿1 pkg_resources.extern.packaging._structures.InfinityType

InfinityType, pkg_resources.extern.packaging._structures.InfinityType, module=pkg_resources.extern.packaging._structures, line:6 at site-packages\pkg_resources_vendor\packaging_structures.py

🌿2 pkg_resources.extern.packaging._structures.NegativeInfinityType

NegativeInfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, module=pkg_resources.extern.packaging._structures, line:38 at site-packages\pkg_resources_vendor\packaging_structures.py

🔵剩余

3 doc
4 loader <_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8AE1C8>
5 spec ModuleSpec(name=‘pkg_resources.extern.packaging._structures’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8AE1C8>, origin=‘…\lib\site-packages\pkg_resources\_vendor\packaging\_structures.py’)
6 Infinity Infinity
7 NegativeInfinity -Infinity

☘️【pkg_resources.extern.packaging.version】

version, fullname=pkg_resources.extern.packaging.version, file=pkg_resources_vendor\packaging\version.py

🔵统计

序号 类别 数量
4 str 5
6 list 1
8 dict 2
9 module 4
10 class 8
11 function 6
13 residual 20
14 system 9
15 private 10
16 all 46

🔵常量

🌿str

1 VERSION_PATTERN
v?
(?:
(?😦?P[0-9]+)!)? # epoch
(?P[0-9]+(?:.[0-9]+)…

🌿dict

2 _legacy_version_replacement_map {‘pre’: ‘c’, ‘preview’: ‘c’, ‘-’: ‘final-’, ‘rc’: ‘c’, ‘dev’: ‘@’}

🔵模块

🌿3 collections

collections, fullname=collections, file=collections_init_.py

🌿4 itertools

itertools, fullname=itertools, file=

🌿5 re

re, fullname=re, file=re.py

🌿6 warnings

warnings, fullname=warnings, file=warnings.py

🔵函数

🌿7 parse(version: str) -> Union[ForwardRef(‘LegacyVersion’), ForwardRef(‘Version’)]

parse(version: str) -> Union[ForwardRef(‘LegacyVersion’), ForwardRef(‘Version’)], module=pkg_resources.extern.packaging.version, line:42 at site-packages\pkg_resources_vendor\packaging\version.py

解析给定的版本字符串并返回 :class:`Version` 对象或 :class:`LegacyVersion` 对象,具体取决于给定的版本是有效的PEP 440版本还是遗留版本。

🌿8 _parse_version_parts(s: str) -> Iterator[str]

_parse_version_parts(s: str) -> Iterator[str], module=pkg_resources.extern.packaging.version, line:179 at site-packages\pkg_resources_vendor\packaging\version.py

🌿9 _legacy_cmpkey(version: str) -> Tuple[int, Tuple[str, …]]

_legacy_cmpkey(version: str) -> Tuple[int, Tuple[str, …]], module=pkg_resources.extern.packaging.version, line:196 at site-packages\pkg_resources_vendor\packaging\version.py

🌿10 _parse_letter_version(letter: str, number: Union[str, bytes, SupportsInt]) -> Union[Tuple[str, int], NoneType]

_parse_letter_version(letter: str, number: Union[str, bytes, SupportsInt]) -> Union[Tuple[str, int], NoneType], module=pkg_resources.extern.packaging.version, line:393 at site-packages\pkg_resources_vendor\packaging\version.py

🌿11 _parse_local_version(local: str) -> Union[pkg_resources.extern.packaging._structures.NegativeInfinityType, Tuple[Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str, Tuple[Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str], str], Tuple[pkg_resources.extern.packaging._structures.NegativeInfinityType, Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str]]], …], NoneType]

_parse_local_version(local: str) -> Union[pkg_resources.extern.packaging._structures.NegativeInfinityType, Tuple[Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str, Tuple[Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str], str], Tuple[pkg_resources.extern.packaging._structures.NegativeInfinityType, Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str]]], …], NoneType], module=pkg_resources.extern.packaging.version, line:432 at site-packages\pkg_resources_vendor\packaging\version.py

取像 abc.1.twelve 这样的字符串。然后把它变成("abc", 1, "Twelve")。

🌿12 _cmpkey(epoch: int, release: Tuple[int, …], pre: Union[Tuple[str, int], NoneType], post: Union[Tuple[str, int], NoneType], dev: Union[Tuple[str, int], NoneType], local: Union[Tuple[Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str]], NoneType]) -> Tuple[int, Tuple[int, …], Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, Tuple[str, int]], Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, Tuple[str, int]], Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, Tuple[str, int]], Union[pkg_resources.extern.packaging._structures.NegativeInfinityType, Tuple[Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str, Tuple[Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str], str], Tuple[pkg_resources.extern.packaging._structures.NegativeInfinityType, Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str]]], …]]]

_cmpkey(epoch: int, release: Tuple[int, …], pre: Union[Tuple[str, int], NoneType], post: Union[Tuple[str, int], NoneType], dev: Union[Tuple[str, int], NoneType], local: Union[Tuple[Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str]], NoneType]) -> Tuple[int, Tuple[int, …], Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, Tuple[str, int]], Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, Tuple[str, int]], Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, Tuple[str, int]], Union[pkg_resources.extern.packaging._structures.NegativeInfinityType, Tuple[Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str, Tuple[Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str], str], Tuple[pkg_resources.extern.packaging._structures.NegativeInfinityType, Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str]]], …]]], module=pkg_resources.extern.packaging.version, line:444 at site-packages\pkg_resources_vendor\packaging\version.py

🔵类

🌿13 typing.SupportsInt

SupportsInt, typing.SupportsInt, module=typing, line:1288 at typing.py

具有一个抽象方法int的ABC。

🌿14 pkg_resources.extern.packaging._structures.InfinityType

InfinityType, pkg_resources.extern.packaging._structures.InfinityType, module=pkg_resources.extern.packaging._structures, line:6 at site-packages\pkg_resources_vendor\packaging_structures.py

🌿14 pkg_resources.extern.packaging._structures.NegativeInfinityType

NegativeInfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, module=pkg_resources.extern.packaging._structures, line:38 at site-packages\pkg_resources_vendor\packaging_structures.py

🌿14 pkg_resources.extern.packaging.version._Version

_Version, pkg_resources.extern.packaging.version._Version, module=pkg_resources.extern.packaging.version, line:-1 at site-packages\pkg_resources_vendor\packaging\version.py

    _Version(epoch, release, dev, pre, post, local)
property

1 dev=<property object at 0x0000018AFF8B73B8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version._Version’>
2 epoch=<property object at 0x0000018AFF8B7318> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version._Version’>
3 local=<property object at 0x0000018AFF8B74A8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version._Version’>
4 post=<property object at 0x0000018AFF8B7458> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version._Version’>
5 pre=<property object at 0x0000018AFF8B7408> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version._Version’>
6 release=<property object at 0x0000018AFF8B7368> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version._Version’>

🌿15 pkg_resources.extern.packaging.version.InvalidVersion

InvalidVersion, pkg_resources.extern.packaging.version.InvalidVersion, module=pkg_resources.extern.packaging.version, line:54 at site-packages\pkg_resources_vendor\packaging\version.py

发现无效版本,用户应参考PEP 440。

🌿16 pkg_resources.extern.packaging.version._BaseVersion

_BaseVersion, pkg_resources.extern.packaging.version._BaseVersion, module=pkg_resources.extern.packaging.version, line:60 at site-packages\pkg_resources_vendor\packaging\version.py

🌿17 pkg_resources.extern.packaging.version.LegacyVersion

LegacyVersion, pkg_resources.extern.packaging.version.LegacyVersion, module=pkg_resources.extern.packaging.version, line:106 at site-packages\pkg_resources_vendor\packaging\version.py

property

1 base_version=<property object at 0x0000018AFF8B7908> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>
2 dev=<property object at 0x0000018AFF8B7C28> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>
3 epoch=<property object at 0x0000018AFF8B79A8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>
4 is_devrelease=<property object at 0x0000018AFF8B7EA8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>
5 is_postrelease=<property object at 0x0000018AFF8B7E08> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>
6 is_prerelease=<property object at 0x0000018AFF8B7D68> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>
7 local=<property object at 0x0000018AFF8B7CC8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>
8 post=<property object at 0x0000018AFF8B7B88> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>
9 pre=<property object at 0x0000018AFF8B7AE8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>
10 public=<property object at 0x0000018AFF8B7868> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>
11 release=<property object at 0x0000018AFF8B7A48> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.LegacyVersion’>

🌿18 pkg_resources.extern.packaging.version.Version

Version, pkg_resources.extern.packaging.version.Version, module=pkg_resources.extern.packaging.version, line:257 at site-packages\pkg_resources_vendor\packaging\version.py

property

1 base_version=<property object at 0x0000018AFF8B9778> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
2 dev=<property object at 0x0000018AFF8B9688> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
3 epoch=<property object at 0x0000018AFF8B9548> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
4 is_devrelease=<property object at 0x0000018AFF8B9868> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
5 is_postrelease=<property object at 0x0000018AFF8B9818> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
6 is_prerelease=<property object at 0x0000018AFF8B97C8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
7 local=<property object at 0x0000018AFF8B96D8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
8 major=<property object at 0x0000018AFF8B98B8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
9 micro=<property object at 0x0000018AFF8B9958> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
10 minor=<property object at 0x0000018AFF8B9908> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
11 post=<property object at 0x0000018AFF8B9638> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
12 pre=<property object at 0x0000018AFF8B95E8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
13 public=<property object at 0x0000018AFF8B9728> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>
14 release=<property object at 0x0000018AFF8B9598> kind:property type:property class:<class ‘pkg_resources.extern.packaging.version.Version’>

🔵私有或局部

19 _Version <class ‘pkg_resources.extern.packaging.version._Version’>
20 _BaseVersion <class ‘pkg_resources.extern.packaging.version._BaseVersion’>
21 _legacy_version_component_re re.compile(‘(\d+ | [a-z]+ | \.| -)’, re.VERBOSE)
22 _legacy_version_replacement_map {‘pre’: ‘c’, ‘preview’: ‘c’, ‘-’: ‘final-’, ‘rc’: ‘c’, ‘dev’: ‘@’}
23 _parse_version_parts <function _parse_version_parts at 0x0000018AFF8B1EE8>
24 _legacy_cmpkey <function _legacy_cmpkey at 0x0000018AFF8B5B88>
25 _parse_letter_version <function _parse_letter_version at 0x0000018AFF8B5C18>
26 local_version_separators re.compile('[\.-]')
27 _parse_local_version <function _parse_local_version at 0x0000018AFF8BD678>
28 _cmpkey <function _cmpkey at 0x0000018AFF8BD708>

🔵剩余

29 doc
30 loader <_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF85BB88>
31 spec ModuleSpec(name=‘pkg_resources.extern.packaging.version’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF85BB88>, origin=‘…\lib\site-packages\pkg_resources\_vendor\packaging\version.py’)
32 Callable typing.Callable
33 Iterator typing.Iterator
34 List typing.List
35 Optional typing.Optional
36 Tuple typing.Tuple
37 Union typing.Union
38 Infinity Infinity
39 NegativeInfinity -Infinity
40 InfiniteTypes typing.Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType]
41 PrePostDevType typing.Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, typing.Tuple[str, int]]
42 SubLocalType typing.Union[pkg_resources.extern.packaging._structures.InfinityType, pkg_resources.extern.packaging._structures.NegativeInfinityType, int, str]
43 LocalType typing.Union[pkg_resources.extern.packaging._structures.NegativeInfinityType, …]
44 CmpKey typing.Tuple[int, typing.Tuple[int, …], typing.Union[pkg_resources.extern.packaging._structures.InfinityType, …
45 LegacyCmpKey typing.Tuple[int, typing.Tuple[str, …]]
46 VersionComparisonMethod typing.Callable[…]
47 _legacy_version_component_re re.compile(‘(\d+ | [a-z]+ | \.| -)’, re.VERBOSE)
48 local_version_separators re.compile('[\.-]')

☘️【pkg_resources._vendor.packaging._manylinux】

_manylinux, fullname=pkg_resources._vendor.packaging._manylinux, file=pkg_resources_vendor\packaging_manylinux.py

🔵统计

序号 类别 数量
4 str 4
8 dict 3
9 module 7
10 class 4
11 function 10
13 residual 9
14 system 9
15 private 14
16 all 37

🔵常量

🌿dict

1 _LEGACY_MANYLINUX_MAP {(2, 17): ‘manylinux2014’, (2, 12): ‘manylinux2010’, (2, 5): ‘manylinux1’}

🔵模块

🌿2 collections

collections, fullname=collections, file=collections_init_.py

🌿3 functools

functools, fullname=functools, file=functools.py

🌿4 os

os, fullname=os, file=os.py

🌿5 re

re, fullname=re, file=re.py

🌿6 struct

struct, fullname=struct, file=struct.py

🌿7 sys

sys, fullname=sys, file=

🌿8 warnings

warnings, fullname=warnings, file=warnings.py

🔵函数

🌿9 _get_elf_header() -> Union[pkg_resources._vendor.packaging._manylinux._ELFFileHeader, NoneType]

_get_elf_header() -> Union[pkg_resources._vendor.packaging._manylinux._ELFFileHeader, NoneType], module=pkg_resources._vendor.packaging._manylinux, line:76 at site-packages\pkg_resources_vendor\packaging_manylinux.py

🌿10 _is_linux_armhf() -> bool

_is_linux_armhf() -> bool, module=pkg_resources._vendor.packaging._manylinux, line:85 at site-packages\pkg_resources_vendor\packaging_manylinux.py

🌿11 _is_linux_i686() -> bool

_is_linux_i686() -> bool, module=pkg_resources._vendor.packaging._manylinux, line:104 at site-packages\pkg_resources_vendor\packaging_manylinux.py

🌿12 _have_compatible_abi(arch: str) -> bool

_have_compatible_abi(arch: str) -> bool, module=pkg_resources._vendor.packaging._manylinux, line:114 at site-packages\pkg_resources_vendor\packaging_manylinux.py

🌿13 _glibc_version_string_confstr() -> Union[str, NoneType]

_glibc_version_string_confstr() -> Union[str, NoneType], module=pkg_resources._vendor.packaging._manylinux, line:135 at site-packages\pkg_resources_vendor\packaging_manylinux.py

使用os.confstr的 glibc_version_string 的主要实现。

🌿14 _glibc_version_string_ctypes() -> Union[str, NoneType]

_glibc_version_string_ctypes() -> Union[str, NoneType], module=pkg_resources._vendor.packaging._manylinux, line:154 at site-packages\pkg_resources_vendor\packaging_manylinux.py

使用ctypes的 glibc_version_string 的回退实现。

🌿15 _glibc_version_string() -> Union[str, NoneType]

_glibc_version_string() -> Union[str, NoneType], module=pkg_resources._vendor.packaging._manylinux, line:198 at site-packages\pkg_resources_vendor\packaging_manylinux.py

返回 glibc_version_string ,如果不使用glibc则返回None。

🌿16 _parse_glibc_version(version_str: str) -> Tuple[int, int]

_parse_glibc_version(version_str: str) -> Tuple[int, int], module=pkg_resources._vendor.packaging._manylinux, line:203 at site-packages\pkg_resources_vendor\packaging_manylinux.py

解析glibc版本。
我们使用regexp而不是str.split,因为我们想要丢弃在次要版本之后可能出现的任何随机垃圾-这可能发生在glibc的补丁/分支版本中
(例如Linaro的glibc版本使用像“2.20-2014.11”这样的版本字符串)。参见:gh-3588。
:````
### 🌿17 _is_compatible(name: str, arch: str, version: pkg_resources._vendor.packaging._manylinux._GLibCVersion) -> bool
> _is_compatible(name: str, arch: str, version: pkg_resources._vendor.packaging._manylinux._GLibCVersion) -> bool, module=pkg_resources._vendor.packaging._manylinux, line:231 at site-packages\pkg_resources\_vendor\packaging\_manylinux.py
### 🌿18 platform_tags(linux: str, arch: str) -> Iterator[str]
> platform_tags(linux: str, arch: str) -> Iterator[str], module=pkg_resources._vendor.packaging._manylinux, line:267 at site-packages\pkg_resources\_vendor\packaging\_manylinux.py
## 🔵类
### 🌿19 typing.IO
> IO, typing.IO, module=typing, line:1490 at typing.py

TextIO和BinaryIO的泛型基类。
这是open()返回值的抽象泛型版本。
注意:这不会区分不同可能的类(文本与二进制、读与写、读/写、仅追加、无缓冲)。
下面的TextIO和BinaryIO子类捕获了文本与二进制之间的区别,这在接口中很普遍;
然而,我们目前还没有提供一种方法来跟踪类型系统中的其他区别。
:````

property

1 closed=<abc.abstractproperty object at 0x0000018AFD42C288> kind:property type:abstractproperty class:<class ‘typing.IO’>
2 mode=<abc.abstractproperty object at 0x0000018AFD42C1C8> kind:property type:abstractproperty class:<class ‘typing.IO’>
3 name=<abc.abstractproperty object at 0x0000018AFD42C228> kind:property type:abstractproperty class:<class ‘typing.IO’>

method
4 close(self) -> None:

kind=method class=IO objtype=function line:1514 at …\lib\typing.py

5 fileno(self) -> int:

kind=method class=IO objtype=function line:1522 at …\lib\typing.py

6 flush(self) -> None:

kind=method class=IO objtype=function line:1526 at …\lib\typing.py

7 isatty(self) -> bool:

kind=method class=IO objtype=function line:1530 at …\lib\typing.py

8 read(self, n: int = -1) -> AnyStr:

kind=method class=IO objtype=function line:1534 at …\lib\typing.py

9 readable(self) -> bool:

kind=method class=IO objtype=function line:1538 at …\lib\typing.py

10 readline(self, limit: int = -1) -> AnyStr:

kind=method class=IO objtype=function line:1542 at …\lib\typing.py

11 readlines(self, hint: int = -1) -> List[AnyStr]:

kind=method class=IO objtype=function line:1546 at …\lib\typing.py

12 seek(self, offset: int, whence: int = 0) -> int:

kind=method class=IO objtype=function line:1550 at …\lib\typing.py

13 seekable(self) -> bool:

kind=method class=IO objtype=function line:1554 at …\lib\typing.py

14 tell(self) -> int:

kind=method class=IO objtype=function line:1558 at …\lib\typing.py

15 truncate(self, size: int = None) -> int:

kind=method class=IO objtype=function line:1562 at …\lib\typing.py

16 writable(self) -> bool:

kind=method class=IO objtype=function line:1566 at …\lib\typing.py

17 write(self, s: AnyStr) -> int:

kind=method class=IO objtype=function line:1570 at …\lib\typing.py

18 writelines(self, lines: List[AnyStr]) -> None:

kind=method class=IO objtype=function line:1574 at …\lib\typing.py

🌿20 typing.NamedTuple

NamedTuple, typing.NamedTuple, module=typing, line:1364 at typing.py

namedtuple的类型化版本。

🌿21 pkg_resources._vendor.packaging._manylinux._ELFFileHeader

_ELFFileHeader, pkg_resources._vendor.packaging._manylinux._ELFFileHeader, module=pkg_resources._vendor.packaging._manylinux, line:15 at site-packages\pkg_resources_vendor\packaging_manylinux.py

data

1 EF_ARM_ABIMASK=4278190080 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
2 EF_ARM_ABI_FLOAT_HARD=1024 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
3 EF_ARM_ABI_VER5=83886080 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
4 ELFCLASS32=1 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
5 ELFCLASS64=2 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
6 ELFDATA2LSB=1 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
7 ELFDATA2MSB=2 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
8 ELF_MAGIC_NUMBER=2135247942 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
9 EM_386=3 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
10 EM_ARM=40 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
11 EM_S390=22 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
12 EM_X86_64=62 kind:data type:int class:<class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>

🌿22 pkg_resources._vendor.packaging._manylinux._GLibCVersion

_GLibCVersion, pkg_resources._vendor.packaging._manylinux._GLibCVersion, module=pkg_resources._vendor.packaging._manylinux, line:130 at site-packages\pkg_resources_vendor\packaging_manylinux.py

    _GLibCVersion(major, minor)
property

1 major=<property object at 0x0000018AFF8E4F98> kind:property type:property class:<class ‘pkg_resources._vendor.packaging._manylinux._GLibCVersion’>
2 minor=<property object at 0x0000018AFF8E9048> kind:property type:property class:<class ‘pkg_resources._vendor.packaging._manylinux._GLibCVersion’>

🔵私有或局部

23 _ELFFileHeader <class ‘pkg_resources._vendor.packaging._manylinux._ELFFileHeader’>
24 _get_elf_header <function _get_elf_header at 0x0000018AFF8DF288>
25 _is_linux_armhf <function _is_linux_armhf at 0x0000018AFF8E5168>
26 _is_linux_i686 <function _is_linux_i686 at 0x0000018AFF8E51F8>
27 _have_compatible_abi <function _have_compatible_abi at 0x0000018AFF8E5288>
28 _LAST_GLIBC_MINOR defaultdict(<function at 0x0000018AFF8E5318>, {})
29 _GLibCVersion <class ‘pkg_resources._vendor.packaging._manylinux._GLibCVersion’>
30 _glibc_version_string_confstr <function _glibc_version_string_confstr at 0x0000018AFF8E53A8>
31 _glibc_version_string_ctypes <function _glibc_version_string_ctypes at 0x0000018AFF8E5948>
32 _glibc_version_string <function _glibc_version_string at 0x0000018AFF8E59D8>
33 _parse_glibc_version <function _parse_glibc_version at 0x0000018AFF8E5A68>
34 _get_glibc_version <functools._lru_cache_wrapper object at 0x0000018AFF8CBD68>
35 _is_compatible <function _is_compatible at 0x0000018AFF8E5AF8>
36 _LEGACY_MANYLINUX_MAP {(2, 17): ‘manylinux2014’, (2, 12): ‘manylinux2010’, (2, 5): ‘manylinux1’}

🔵剩余

37 doc
38 loader <_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF868388>
39 spec ModuleSpec(name=‘pkg_resources._vendor.packaging._manylinux’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF868388>, origin=‘…\lib\site-packages\pkg_resources\_vendor\packaging\_manylinux.py’)
40 Dict typing.Dict
41 Iterator typing.Iterator
42 Optional typing.Optional
43 Tuple typing.Tuple
44 _LAST_GLIBC_MINOR defaultdict(<function at 0x0000018AFF8E5318>, {})
45 _get_glibc_version <functools._lru_cache_wrapper object at 0x0000018AFF8CBD68>

☘️【pkg_resources._vendor.packaging._musllinux】

_musllinux, fullname=pkg_resources._vendor.packaging._musllinux, file=pkg_resources_vendor\packaging_musllinux.py

PEP 656支持。该模块实现了检测当前运行的Python是否与musl相关联以及使用哪个musl版本的逻辑。
:````
## 🔵统计

序号|类别|数量
---|---|---
4|str|5
8|dict|1
9|module|8
10|class|3
11|function|4
13|residual|6
14|system|8
15|private|5
16|all|27
## 🔵模块
### 🌿1 contextlib
> contextlib, fullname=contextlib, file=contextlib.py
### 🌿2 functools
> functools, fullname=functools, file=functools.py
### 🌿3 operator
> operator, fullname=operator, file=operator.py
### 🌿4 os
> os, fullname=os, file=os.py
### 🌿5 re
> re, fullname=re, file=re.py
### 🌿6 struct
> struct, fullname=struct, file=struct.py
### 🌿7 subprocess
> subprocess, fullname=subprocess, file=subprocess.py
### 🌿8 sys
> sys, fullname=sys, file=
## 🔵函数
### 🌿9 _read_unpacked(f: IO[bytes], fmt: str) -> Tuple[int, ...]
> _read_unpacked(f: IO[bytes], fmt: str) -> Tuple[int, ...], module=pkg_resources._vendor.packaging._musllinux, line:18 at site-packages\pkg_resources\_vendor\packaging\_musllinux.py
### 🌿10 _parse_ld_musl_from_elf(f: IO[bytes]) -> Union[str, NoneType]
> _parse_ld_musl_from_elf(f: IO[bytes]) -> Union[str, NoneType], module=pkg_resources._vendor.packaging._musllinux, line:22 at site-packages\pkg_resources\_vendor\packaging\_musllinux.py

通过解析Python可执行文件来检测代码库位置。
基于:
ELF头:
:````

🌿11 _parse_musl_version(output: str) -> Union[pkg_resources._vendor.packaging._musllinux._MuslVersion, NoneType]

_parse_musl_version(output: str) -> Union[pkg_resources._vendor.packaging._musllinux._MuslVersion, NoneType], module=pkg_resources._vendor.packaging._musllinux, line:76 at site-packages\pkg_resources_vendor\packaging_musllinux.py

🌿12 platform_tags(arch: str) -> Iterator[str]

platform_tags(arch: str) -> Iterator[str], module=pkg_resources._vendor.packaging._musllinux, line:110 at site-packages\pkg_resources_vendor\packaging_musllinux.py

生成与当前平台兼容的musllinux标签。
    :param arch: 应该是 ``linux_`` 前缀之后的平台标签的一部分,例如: ``x86_64``。
                    ``linux_``  前缀被认为是当前平台与musllinux兼容的先决条件。
    :returns:   兼容的musllinux标签的迭代器。

🔵类

🌿13 typing.IO

IO, typing.IO, module=typing, line:1490 at typing.py

🌿13 typing.NamedTuple

NamedTuple, typing.NamedTuple, module=typing, line:1364 at typing.py

🌿13 pkg_resources._vendor.packaging._musllinux._MuslVersion

_MuslVersion, pkg_resources._vendor.packaging._musllinux._MuslVersion, module=pkg_resources._vendor.packaging._musllinux, line:71 at site-packages\pkg_resources_vendor\packaging_musllinux.py

    _MuslVersion(major, minor)
property

1 major=<property object at 0x0000018AFF8E9EA8> kind:property type:property class:<class ‘pkg_resources._vendor.packaging._musllinux._MuslVersion’>
2 minor=<property object at 0x0000018AFF8E9EF8> kind:property type:property class:<class ‘pkg_resources._vendor.packaging._musllinux._MuslVersion’>

🔵私有或局部

14 _read_unpacked <function _read_unpacked at 0x0000018AFF8E1558>
15 _parse_ld_musl_from_elf <function _parse_ld_musl_from_elf at 0x0000018AFF8EB288>
16 _MuslVersion <class ‘pkg_resources._vendor.packaging._musllinux._MuslVersion’>
17 _parse_musl_version <function _parse_musl_version at 0x0000018AFF8EB318>
18 _get_musl_version <functools._lru_cache_wrapper object at 0x0000018AFF8CBAE8>

🔵剩余

19 loader <_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8E6388>
20 spec ModuleSpec(name=‘pkg_resources._vendor.packaging._musllinux’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8E6388>, origin=‘…\lib\site-packages\pkg_resources\_vendor\packaging\_musllinux.py’)
21 Iterator typing.Iterator
22 Optional typing.Optional
23 Tuple typing.Tuple
24 _get_musl_version <functools._lru_cache_wrapper object at 0x0000018AFF8CBAE8>

☘️【pkg_resources.extern.packaging.tags】

tags, fullname=pkg_resources.extern.packaging.tags, file=pkg_resources_vendor\packaging\tags.py

🔵统计

序号 类别 数量
2 bool 1
4 str 4
6 list 1
8 dict 3
9 module 6
10 class 1
11 function 21
13 residual 15
14 system 9
15 private 14
16 all 52

🔵常量

🌿bool

1 _32_BIT_INTERPRETER False

🌿list

2 EXTENSION_SUFFIXES [‘.cp37-win_amd64.pyd’, ‘.pyd’]

🌿dict

3 INTERPRETER_SHORT_NAMES {‘python’: ‘py’, ‘cpython’: ‘cp’, ‘pypy’: ‘pp’, ‘ironpython’: ‘ip’, ‘jython’: ‘jy’}

🔵模块

🌿4 logging

logging, fullname=logging, file=logging_init_.py

🌿5 platform

platform, fullname=platform, file=platform.py

🌿6 sys

sys, fullname=sys, file=

🌿7 sysconfig

sysconfig, fullname=sysconfig, file=sysconfig.py

🌿8 pkg_resources._vendor.packaging._manylinux

_manylinux, fullname=pkg_resources._vendor.packaging._manylinux, file=pkg_resources_vendor\packaging_manylinux.py

🌿9 pkg_resources._vendor.packaging._musllinux

_musllinux, fullname=pkg_resources._vendor.packaging._musllinux, file=pkg_resources_vendor\packaging_musllinux.py

PEP 656支持。
该模块实现了检测当前运行的Python是否与musl相关联以及使用哪个musl版本的逻辑。
:````
## 🔵函数
### 🌿10 cast(typ, val)
> cast(typ, val), module=typing, line:898 at typing.py

将值强制转换为类型。
这将返回不变的值。
对于类型检查器,这表明返回值具有指定的类型,但在运行时,我们故意不检查任何内容(我们希望这尽可能快)。
:````

🌿11 parse_tag(tag: str) -> FrozenSet[pkg_resources.extern.packaging.tags.Tag]

parse_tag(tag: str) -> FrozenSet[pkg_resources.extern.packaging.tags.Tag], module=pkg_resources.extern.packaging.tags, line:96 at site-packages\pkg_resources_vendor\packaging\tags.py

解析所提供的标签(例如:'py3-none-any')冻结为一组Tag实例。
由于标记可能是压缩标记集,因此需要返回一个集合。
:````
### 🌿12 _get_config_var(name: str, warn: bool = False) -> Union[int, str, NoneType]
> _get_config_var(name: str, warn: bool = False) -> Union[int, str, NoneType], module=pkg_resources.extern.packaging.tags, line:112 at site-packages\pkg_resources\_vendor\packaging\tags.py
### 🌿13 _normalize_string(string: str) -> str
> _normalize_string(string: str) -> str, module=pkg_resources.extern.packaging.tags, line:121 at site-packages\pkg_resources\_vendor\packaging\tags.py
### 🌿14 _abi3_applies(python_version: Sequence[int]) -> bool
> _abi3_applies(python_version: Sequence[int]) -> bool, module=pkg_resources.extern.packaging.tags, line:125 at site-packages\pkg_resources\_vendor\packaging\tags.py

确定Python版本是否支持abi3。
PEP 384首次在Python 3.2中实现。
:````

🌿15 _cpython_abis(py_version: Sequence[int], warn: bool = False) -> List[str]

_cpython_abis(py_version: Sequence[int], warn: bool = False) -> List[str], module=pkg_resources.extern.packaging.tags, line:134 at site-packages\pkg_resources_vendor\packaging\tags.py

🌿16 cpython_tags(python_version: Union[Sequence[int], NoneType] = None, abis: Union[Iterable[str], NoneType] = None, platforms: Union[Iterable[str], NoneType] = None, *, warn: bool = False) -> Iterator[pkg_resources.extern.packaging.tags.Tag]

cpython_tags(python_version: Union[Sequence[int], NoneType] = None, abis: Union[Iterable[str], NoneType] = None, platforms: Union[Iterable[str], NoneType] = None, *, warn: bool = False) -> Iterator[pkg_resources.extern.packaging.tags.Tag], module=pkg_resources.extern.packaging.tags, line:170 at site-packages\pkg_resources_vendor\packaging\tags.py

生成CPython解释器的标签。
    标记包括:
    - cp<python version>-<abi>-<platform>
    - cp<python version>-abi3-<platform>
    - cp<python version>-none-<platform>
    - cp<小于python version>-abi3-<platform> #旧python版本低于3.2。
    如果python_version只指定主版本,则使用用户提供的ABI和'none' ABItag。
    如果'abis'中指定了'abi3'或'none',则它们将在其正常位置而不是在开始位置产生。

🌿17 _generic_abi() -> Iterator[str]

_generic_abi() -> Iterator[str], module=pkg_resources.extern.packaging.tags, line:227 at site-packages\pkg_resources_vendor\packaging\tags.py

🌿18 generic_tags(interpreter: Union[str, NoneType] = None, abis: Union[Iterable[str], NoneType] = None, platforms: Union[Iterable[str], NoneType] = None, *, warn: bool = False) -> Iterator[pkg_resources.extern.packaging.tags.Tag]

generic_tags(interpreter: Union[str, NoneType] = None, abis: Union[Iterable[str], NoneType] = None, platforms: Union[Iterable[str], NoneType] = None, *, warn: bool = False) -> Iterator[pkg_resources.extern.packaging.tags.Tag], module=pkg_resources.extern.packaging.tags, line:233 at site-packages\pkg_resources_vendor\packaging\tags.py

生成泛型解释器的标记。
    标记包括:
        -< interpreter>-<abi>-<platform>
        如果没有显式提供,将添加"none" ABI。

🌿19 _py_interpreter_range(py_version: Sequence[int]) -> Iterator[str]

_py_interpreter_range(py_version: Sequence[int]) -> Iterator[str], module=pkg_resources.extern.packaging.tags, line:263 at site-packages\pkg_resources_vendor\packaging\tags.py

按降序生成Python版本。
在最新版本之后,将生成仅主要版本,然后是该主要版本的所有以前版本。
:````
### 🌿20 compatible_tags(python_version: Union[Sequence[int], NoneType] = None, interpreter: Union[str, NoneType] = None, platforms: Union[Iterable[str], NoneType] = None) -> Iterator[pkg_resources.extern.packaging.tags.Tag]
> compatible_tags(python_version: Union[Sequence[int], NoneType] = None, interpreter: Union[str, NoneType] = None, platforms: Union[Iterable[str], NoneType] = None) -> Iterator[pkg_resources.extern.packaging.tags.Tag], module=pkg_resources.extern.packaging.tags, line:278 at site-packages\pkg_resources\_vendor\packaging\tags.py

生成与特定Python版本兼容的标记序列。
这些标签包括:
- py*-none-
-< interpreter>-none-any #…如果提供了’ interpreter '。
- py * -none-any
:````

🌿21 _mac_arch(arch: str, is_32bit: bool = False) -> str

_mac_arch(arch: str, is_32bit: bool = False) -> str, module=pkg_resources.extern.packaging.tags, line:303 at site-packages\pkg_resources_vendor\packaging\tags.py

🌿22 _mac_binary_formats(version: Tuple[int, int], cpu_arch: str) -> List[str]

_mac_binary_formats(version: Tuple[int, int], cpu_arch: str) -> List[str], module=pkg_resources.extern.packaging.tags, line:313 at site-packages\pkg_resources_vendor\packaging\tags.py

🌿23 mac_platforms(version: Union[Tuple[int, int], NoneType] = None, arch: Union[str, NoneType] = None) -> Iterator[str]

mac_platforms(version: Union[Tuple[int, int], NoneType] = None, arch: Union[str, NoneType] = None) -> Iterator[str], module=pkg_resources.extern.packaging.tags, line:345 at site-packages\pkg_resources_vendor\packaging\tags.py

生成macOS系统的平台标记。
    `version` 参数是一个包含两项的元组,指定要为其生成平台标签的macOS版本。
    `arch` 参数是要生成平台标签的CPU架构。这两个参数默认为当前系统的适当值。
:````
### 🌿24 _linux_platforms(is_32bit: bool = False) -> Iterator[str]
> _linux_platforms(is_32bit: bool = False) -> Iterator[str], module=pkg_resources.extern.packaging.tags, line:417 at site-packages\pkg_resources\_vendor\packaging\tags.py
### 🌿25 _generic_platforms() -> Iterator[str]
> _generic_platforms() -> Iterator[str], module=pkg_resources.extern.packaging.tags, line:430 at site-packages\pkg_resources\_vendor\packaging\tags.py
### 🌿26 platform_tags() -> Iterator[str]
> platform_tags() -> Iterator[str], module=pkg_resources.extern.packaging.tags, line:434 at site-packages\pkg_resources\_vendor\packaging\tags.py

提供此安装的平台标记。

### 🌿27 interpreter_name() -> str
> interpreter_name() -> str, module=pkg_resources.extern.packaging.tags, line:446 at site-packages\pkg_resources\_vendor\packaging\tags.py

返回正在运行的解释器的名称。

### 🌿28 interpreter_version(*, warn: bool = False) -> str
> interpreter_version(*, warn: bool = False) -> str, module=pkg_resources.extern.packaging.tags, line:454 at site-packages\pkg_resources\_vendor\packaging\tags.py

返回正在运行的解释器的版本。

### 🌿29 _version_nodot(version: Sequence[int]) -> str
> _version_nodot(version: Sequence[int]) -> str, module=pkg_resources.extern.packaging.tags, line:466 at site-packages\pkg_resources\_vendor\packaging\tags.py
### 🌿30 sys_tags(*, warn: bool = False) -> Iterator[pkg_resources.extern.packaging.tags.Tag]
> sys_tags(*, warn: bool = False) -> Iterator[pkg_resources.extern.packaging.tags.Tag], module=pkg_resources.extern.packaging.tags, line:470 at site-packages\pkg_resources\_vendor\packaging\tags.py

返回正在运行的解释器的标记三元组序列。
序列的顺序对应于解释器的优先级顺序,从最重要到最不重要。
:````

🔵类

🌿31 pkg_resources.extern.packaging.tags.Tag

Tag, pkg_resources.extern.packaging.tags.Tag, module=pkg_resources.extern.packaging.tags, line:42 at site-packages\pkg_resources_vendor\packaging\tags.py

车轮标记三元组的表示形式。
实例被认为是不可变的,因此是可哈希的。还支持相等性检查。
:````
#### property
> 1	abi=<property object at 0x0000018AFF8ED188>	kind:property	type:property	class:<class 'pkg_resources.extern.packaging.tags.Tag'>	
> 2	interpreter=<property object at 0x0000018AFF8ED0E8>	kind:property	type:property	class:<class 'pkg_resources.extern.packaging.tags.Tag'>	
> 3	platform=<property object at 0x0000018AFF8ED228>	kind:property	type:property	class:<class 'pkg_resources.extern.packaging.tags.Tag'>	
## 🔵私有或局部
> 32	_manylinux	<module 'pkg_resources._vendor.packaging._manylinux' from '...\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\_manylinux.py'>
> 33	_musllinux	<module 'pkg_resources._vendor.packaging._musllinux' from '...\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\_musllinux.py'>
> 34	_32_BIT_INTERPRETER	False
> 35	_get_config_var	<function _get_config_var at 0x0000018AFF8EBD38>
> 36	_normalize_string	<function _normalize_string at 0x0000018AFF8EBDC8>
> 37	_abi3_applies	<function _abi3_applies at 0x0000018AFF8EBE58>
> 38	_cpython_abis	<function _cpython_abis at 0x0000018AFF8EBEE8>
> 39	_generic_abi	<function _generic_abi at 0x0000018AFF8EA048>
> 40	_py_interpreter_range	<function _py_interpreter_range at 0x0000018AFF8EA168>
> 41	_mac_arch	<function _mac_arch at 0x0000018AFF8EA288>
> 42	_mac_binary_formats	<function _mac_binary_formats at 0x0000018AFF8EA318>
> 43	_linux_platforms	<function _linux_platforms at 0x0000018AFF8EA438>
> 44	_generic_platforms	<function _generic_platforms at 0x0000018AFF8EA4C8>
> 45	_version_nodot	<function _version_nodot at 0x0000018AFF8EA708>
## 🔵剩余
> 46	__doc__	
> 47	__loader__	<_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8C8D08>
> 48	__spec__	ModuleSpec(name='pkg_resources.extern.packaging.tags', loader=<_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8C8D08>, origin='...\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\tags.py')
> 49	Dict	typing.Dict
> 50	FrozenSet	typing.FrozenSet
> 51	Iterable	typing.Iterable
> 52	Iterator	typing.Iterator
> 53	List	typing.List
> 54	Optional	typing.Optional
> 55	Sequence	typing.Sequence
> 56	Tuple	typing.Tuple
> 57	Union	typing.Union
> 58	logger	<Logger pkg_resources.extern.packaging.tags (WARNING)>
> 59	PythonVersion	typing.Sequence[int]
> 60	MacVersion	typing.Tuple[int, int]
## ☘️【pkg_resources.extern.packaging.utils】
> utils, fullname=pkg_resources.extern.packaging.utils, file=pkg_resources\_vendor\packaging\utils.py
## 🔵统计

序号|类别|数量
---|---|---
4|str|4
8|dict|1
9|module|1
10|class|5
11|function|8
13|residual|9
14|system|8
15|private|2
16|all|28
## 🔵模块
### 🌿1 re
> re, fullname=re, file=re.py
## 🔵函数
### 🌿2 NewType(name, tp)
> NewType(name, tp), module=typing, line:1455 at typing.py

NewType创建简单的唯一类型,运行时开销几乎为零。
静态类型检查器认为NewType(name, tp)是tp的子类型。
在运行时,NewType(name, tp)返回一个虚拟函数,该函数只返回其参数。
用法:
UserId = NewType(‘UserId’, int)
def name_by_id(user_id: UserId) -> str:

UserId(‘user’) # Fails type check
name_by_id(42) # Fails type check
name_by_id(UserId(42)) # OK
num = UserId(5) + 1 # type: int

### 🌿3 cast(typ, val)
> cast(typ, val), module=typing, line:898 at typing.py

将值强制转换为类型。
这将返回不变的值。对于类型检查器,这表明返回值具有指定的类型,
但在运行时,我们故意不检查任何内容(我们希望这尽可能快)。
:````

🌿4 parse_tag(tag: str) -> FrozenSet[pkg_resources.extern.packaging.tags.Tag]

parse_tag(tag: str) -> FrozenSet[pkg_resources.extern.packaging.tags.Tag], module=pkg_resources.extern.packaging.tags, line:96 at site-packages\pkg_resources_vendor\packaging\tags.py

解析所提供的标签(例如:'py3-none-any')冻结为一组Tag实例。
由于标记可能是压缩标记集,因此需要返回一个集合。
:````
### 🌿5 NormalizedName(x)
> NormalizedName(x), module=typing, line:1474 at typing.py
### 🌿6 canonicalize_name(name: str) -> <function NewType.<locals>.new_type at 0x0000018AFF8D1D38>
> canonicalize_name(name: str) -> <function NewType.<locals>.new_type at 0x0000018AFF8D1D38>, module=pkg_resources.extern.packaging.utils, line:32 at site-packages\pkg_resources\_vendor\packaging\utils.py
### 🌿7 canonicalize_version(version: Union[pkg_resources.extern.packaging.version.Version, str]) -> str
> canonicalize_version(version: Union[pkg_resources.extern.packaging.version.Version, str]) -> str, module=pkg_resources.extern.packaging.utils, line:38 at site-packages\pkg_resources\_vendor\packaging\utils.py

这与Version.__str__非常相似,但是它处理发布段的方式有一个微妙的区别。

### 🌿8 parse_wheel_filename(filename: str) -> Tuple[NormalizedName, pkg_resources.extern.packaging.version.Version, Union[Tuple[()], Tuple[int, str]], FrozenSet[pkg_resources.extern.packaging.tags.Tag]]
> parse_wheel_filename(filename: str) -> Tuple[NormalizedName, pkg_resources.extern.packaging.version.Version, Union[Tuple[()], Tuple[int, str]], FrozenSet[pkg_resources.extern.packaging.tags.Tag]], module=pkg_resources.extern.packaging.utils, line:81 at site-packages\pkg_resources\_vendor\packaging\utils.py
### 🌿9 parse_sdist_filename(filename: str) -> Tuple[NormalizedName, pkg_resources.extern.packaging.version.Version]
> parse_sdist_filename(filename: str) -> Tuple[NormalizedName, pkg_resources.extern.packaging.version.Version], module=pkg_resources.extern.packaging.utils, line:117 at site-packages\pkg_resources\_vendor\packaging\utils.py
## 🔵类
### 🌿10 pkg_resources.extern.packaging.tags.Tag
> Tag, pkg_resources.extern.packaging.tags.Tag, module=pkg_resources.extern.packaging.tags, line:42 at site-packages\pkg_resources\_vendor\packaging\tags.py
### 🌿10 pkg_resources.extern.packaging.version.InvalidVersion
> InvalidVersion, pkg_resources.extern.packaging.version.InvalidVersion, module=pkg_resources.extern.packaging.version, line:54 at site-packages\pkg_resources\_vendor\packaging\version.py
### 🌿10 pkg_resources.extern.packaging.version.Version
> Version, pkg_resources.extern.packaging.version.Version, module=pkg_resources.extern.packaging.version, line:257 at site-packages\pkg_resources\_vendor\packaging\version.py
### 🌿10 pkg_resources.extern.packaging.utils.InvalidWheelFilename
> InvalidWheelFilename, pkg_resources.extern.packaging.utils.InvalidWheelFilename, module=pkg_resources.extern.packaging.utils, line:15 at site-packages\pkg_resources\_vendor\packaging\utils.py

发现一个无效的车轮文件名,用户应参考PEP 427。

### 🌿11 pkg_resources.extern.packaging.utils.InvalidSdistFilename
> InvalidSdistFilename, pkg_resources.extern.packaging.utils.InvalidSdistFilename, module=pkg_resources.extern.packaging.utils, line:21 at site-packages\pkg_resources\_vendor\packaging\utils.py

发现一个无效的sdist文件名,用户应该参考打包用户指南。

## 🔵私有或局部
> 12	_canonicalize_regex	re.compile('[-_.]+')
> 13	_build_tag_regex	re.compile('(\\d+)(.*)')
## 🔵剩余
> 14	__doc__	
> 15	__loader__	<_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8C8388>
> 16	__spec__	ModuleSpec(name='pkg_resources.extern.packaging.utils', loader=<_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8C8388>, origin='...\\lib\\site-packages\\pkg_resources\\_vendor\\packaging\\utils.py')
> 17	FrozenSet	typing.FrozenSet
> 18	Tuple	typing.Tuple
> 19	Union	typing.Union
> 20	BuildTag	typing.Union[typing.Tuple[()], typing.Tuple[int, str]]
> 21	_canonicalize_regex	re.compile('[-_.]+')
> 22	_build_tag_regex	re.compile('(\\d+)(.*)')
## ☘️【pkg_resources.extern.packaging.specifiers】
> specifiers, fullname=pkg_resources.extern.packaging.specifiers, file=pkg_resources\_vendor\packaging\specifiers.py
## 🔵统计

序号|类别|数量
---|---|---
4|str|4
8|dict|1
9|module|5
10|class|9
11|function|6
13|residual|18
14|system|8
15|private|6
16|all|43
## 🔵模块
### 🌿1 abc
> abc, fullname=abc, file=abc.py
### 🌿2 functools
> functools, fullname=functools, file=functools.py
### 🌿3 itertools
> itertools, fullname=itertools, file=
### 🌿4 re
> re, fullname=re, file=re.py
### 🌿5 warnings
> warnings, fullname=warnings, file=warnings.py
## 🔵函数
### 🌿6 canonicalize_version(version: Union[pkg_resources.extern.packaging.version.Version, str]) -> str
> canonicalize_version(version: Union[pkg_resources.extern.packaging.version.Version, str]) -> str, module=pkg_resources.extern.packaging.utils, line:38 at site-packages\pkg_resources\_vendor\packaging\utils.py

这与 Version.str 非常相似,但是它处理发布段的方式有一个微妙的区别。

### 🌿7 parse(version: str) -> Union[ForwardRef('LegacyVersion'), ForwardRef('Version')]
> parse(version: str) -> Union[ForwardRef('LegacyVersion'), ForwardRef('Version')], module=pkg_resources.extern.packaging.version, line:42 at site-packages\pkg_resources\_vendor\packaging\version.py

解析给定的版本字符串并返回:class:version 对象或 :class:LegacyVersion 对象,具体取决于给定的版本是有效的PEP 440版本还是遗留版本。
:````

🌿8 _require_version_compare(fn: Callable[[ForwardRef(‘Specifier’), Union[pkg_resources.extern.packaging.version.Version, pkg_resources.extern.packaging.version.LegacyVersion], str], bool]) -> Callable[[ForwardRef(‘Specifier’), Union[pkg_resources.extern.packaging.version.Version, pkg_resources.extern.packaging.version.LegacyVersion], str], bool]

_require_version_compare(fn: Callable[[ForwardRef(‘Specifier’), Union[pkg_resources.extern.packaging.version.Version, pkg_resources.extern.packaging.version.LegacyVersion], str], bool]) -> Callable[[ForwardRef(‘Specifier’), Union[pkg_resources.extern.packaging.version.Version, pkg_resources.extern.packaging.version.LegacyVersion], str], bool], module=pkg_resources.extern.packaging.specifiers, line:305 at site-packages\pkg_resources_vendor\packaging\specifiers.py

🌿9 _version_split(version: str) -> List[str]

_version_split(version: str) -> List[str], module=pkg_resources.extern.packaging.specifiers, line:603 at site-packages\pkg_resources_vendor\packaging\specifiers.py

🌿10 _is_not_suffix(segment: str) -> bool

_is_not_suffix(segment: str) -> bool, module=pkg_resources.extern.packaging.specifiers, line:614 at site-packages\pkg_resources_vendor\packaging\specifiers.py

🌿11 _pad_version(left: List[str], right: List[str]) -> Tuple[List[str], List[str]]

_pad_version(left: List[str], right: List[str]) -> Tuple[List[str], List[str]], module=pkg_resources.extern.packaging.specifiers, line:620 at site-packages\pkg_resources_vendor\packaging\specifiers.py

🔵类

🌿12 typing.TypeVar

TypeVar, typing.TypeVar, module=typing, line:488 at typing.py

类型变量。
    用法:
      T = TypeVar('T')  # 可以是任何值
      A = TypeVar('A', str, bytes)  # 必须是str或bytes
    类型变量的存在主要是为了方便静态类型检查器。它们作为泛型类型和泛型函数定义的参数。
    有关泛型类型的更多信息,请参阅泛型类。泛型函数的工作方式如下:
       def repeat(x: T, n: int) -> List[T]:
          '''返回包含n个对x的引用的列表。'''
          return [x]*n
      def longest(x: A, y: A) -> A:
          '''返回两个字符串中最长的字符串。'''
          return x if len(x) >= len(y) else y
    后一个例子的签名本质上是(str, str) -> str和(bytes, bytes) -> bytes的重载。
    还请注意,如果参数是str的某个子类的实例,则返回类型仍然是普通str。
    在运行时,isinstance(x, T)和issubclass(C, T)将引发TypeError。
    用covariant=True或contravant =True定义的类型变量可用于声明协变或逆变泛型。
    有关更多细节,请参阅PEP 484。
    默认情况下,泛型类型在所有类型变量中都是不变的。类型变量可以自省。
    例如:
        T.__name__ == 'T'
        T.__constraints__ == ()
        T.__covariant__ == False
        T.__contravariant__ = False
        A.__constraints__ == (str, bytes)
    注意,只有在全局作用域中定义的类型变量才能被pickle。

🌿13 pkg_resources.extern.packaging.version.LegacyVersion

LegacyVersion, pkg_resources.extern.packaging.version.LegacyVersion, module=pkg_resources.extern.packaging.version, line:106 at site-packages\pkg_resources_vendor\packaging\version.py

🌿13 pkg_resources.extern.packaging.version.Version

Version, pkg_resources.extern.packaging.version.Version, module=pkg_resources.extern.packaging.version, line:257 at site-packages\pkg_resources_vendor\packaging\version.py

🌿13 pkg_resources.extern.packaging.specifiers.InvalidSpecifier

InvalidSpecifier, pkg_resources.extern.packaging.specifiers.InvalidSpecifier, module=pkg_resources.extern.packaging.specifiers, line:33 at site-packages\pkg_resources_vendor\packaging\specifiers.py

发现一个无效的说明符,用户应参考PEP 440。

🌿14 pkg_resources.extern.packaging.specifiers.BaseSpecifier

BaseSpecifier, pkg_resources.extern.packaging.specifiers.BaseSpecifier, module=pkg_resources.extern.packaging.specifiers, line:39 at site-packages\pkg_resources_vendor\packaging\specifiers.py

property

1 prereleases=<abc.abstractproperty object at 0x0000018AFF8EC1C8> kind:property type:abstractproperty class:<class ‘pkg_resources.extern.packaging.specifiers.BaseSpecifier’>

method
2 contains(self, item: str, prereleases: Optional[bool] = None) -> bool:

kind=method class=BaseSpecifier objtype=function line:82 at …\lib\site-packages\pkg_resources_vendor\packaging\specifiers.py

确定给定项是否包含在此说明符中。
3 filter(

kind=method class=BaseSpecifier objtype=function line:88 at …\lib\site-packages\pkg_resources_vendor\packaging\specifiers.py

获取项的可迭代对象并对其进行筛选,以便只允许包含在此说明符中的项在其中。

🌿15 pkg_resources.extern.packaging.specifiers._IndividualSpecifier

_IndividualSpecifier, pkg_resources.extern.packaging.specifiers._IndividualSpecifier, module=pkg_resources.extern.packaging.specifiers, line:97 at site-packages\pkg_resources_vendor\packaging\specifiers.py

property

1 operator=<property object at 0x0000018AFF8F60E8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.specifiers._IndividualSpecifier’>
2 prereleases=<property object at 0x0000018AFF8F62C8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.specifiers._IndividualSpecifier’>
3 version=<property object at 0x0000018AFF8F6188> kind:property type:property class:<class ‘pkg_resources.extern.packaging.specifiers._IndividualSpecifier’>

method
4 contains(

kind=method class=_IndividualSpecifier objtype=function line:186 at …\lib\site-packages\pkg_resources_vendor\packaging\specifiers.py

5 filter(

kind=method class=_IndividualSpecifier objtype=function line:209 at …\lib\site-packages\pkg_resources_vendor\packaging\specifiers.py

🌿16 pkg_resources.extern.packaging.specifiers.LegacySpecifier

LegacySpecifier, pkg_resources.extern.packaging.specifiers.LegacySpecifier, module=pkg_resources.extern.packaging.specifiers, line:245 at site-packages\pkg_resources_vendor\packaging\specifiers.py

🌿17 pkg_resources.extern.packaging.specifiers.Specifier

Specifier, pkg_resources.extern.packaging.specifiers.Specifier, module=pkg_resources.extern.packaging.specifiers, line:317 at site-packages\pkg_resources_vendor\packaging\specifiers.py

property

1 prereleases=<property object at 0x0000018AFF8F6AE8> kind:property type:property class:<class ‘pkg_resources.extern.packaging.specifiers.Specifier’>

🌿18 pkg_resources.extern.packaging.specifiers.SpecifierSet

SpecifierSet, pkg_resources.extern.packaging.specifiers.SpecifierSet, module=pkg_resources.extern.packaging.specifiers, line:638 at site-packages\pkg_resources_vendor\packaging\specifiers.py

property

1 prereleases=<property object at 0x0000018AFF8F6E58> kind:property type:property class:<class ‘pkg_resources.extern.packaging.specifiers.SpecifierSet’>

method
2 contains(

kind=method class=SpecifierSet objtype=function line:748 at …\lib\site-packages\pkg_resources_vendor\packaging\specifiers.py

3 filter(

kind=method class=SpecifierSet objtype=function line:777 at …\lib\site-packages\pkg_resources_vendor\packaging\specifiers.py

🔵私有或局部

19 _IndividualSpecifier <class ‘pkg_resources.extern.packaging.specifiers._IndividualSpecifier’>
20 _require_version_compare <function _require_version_compare at 0x0000018AFF8F7948>
21 _prefix_regex re.compile(‘^([0-9]+)((?:a|b|c|rc)[0-9]+)$’)
22 _version_split <function _version_split at 0x0000018AFF8F79D8>
23 _is_not_suffix <function _is_not_suffix at 0x0000018AFF907438>
24 _pad_version <function _pad_version at 0x0000018AFF9074C8>

🔵剩余

25 doc
26 loader <_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8B3F88>
27 spec ModuleSpec(name=‘pkg_resources.extern.packaging.specifiers’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8B3F88>, origin=‘…\lib\site-packages\pkg_resources\_vendor\packaging\specifiers.py’)
28 Callable typing.Callable
29 Dict typing.Dict
30 Iterable typing.Iterable
31 Iterator typing.Iterator
32 List typing.List
33 Optional typing.Optional
34 Pattern typing.Pattern
35 Set typing.Set
36 Tuple typing.Tuple
37 Union typing.Union
38 ParsedVersion typing.Union[pkg_resources.extern.packaging.version.Version, pkg_resources.extern.packaging.version.LegacyVersion]
39 UnparsedVersion typing.Union[pkg_resources.extern.packaging.version.Version, pkg_resources.extern.packaging.version.LegacyVersion, str]
40 VersionTypeVar ~VersionTypeVar
41 CallableOperator typing.Callable[[typing.Union[pkg_resources.extern.packaging.version.Version, pkg_resources.extern.packaging.version.LegacyVersion], str], bool]
42 _prefix_regex re.compile(‘^([0-9]+)((?:a|b|c|rc)[0-9]+)$’)

☘️【pkg_resources.extern.packaging.markers】

markers, fullname=pkg_resources.extern.packaging.markers, file=pkg_resources_vendor\packaging\markers.py

🔵统计

序号 类别 数量
4 str 4
6 list 1
8 dict 4
9 module 4
10 class 18
11 function 7
13 residual 26
14 system 10
15 private 7
16 all 64

🔵常量

🌿dict

1 ALIASES {‘os.name’: ‘os_name’, ‘sys.platform’: ‘sys_platform’, ‘platform.version’: ‘platform_version’, ‘platform.machine’: 'plat…
2 _operators {‘in’: <function at 0x0000018AFF93B4C8>, ‘not in’: <function at 0x0000018AFF93B798>, ‘<’: <built-in fu…

🔵模块

🌿3 operator

operator, fullname=operator, file=operator.py

🌿4 os

os, fullname=os, file=os.py

🌿5 platform

platform, fullname=platform, file=platform.py

🌿6 sys

sys, fullname=sys, file=

🔵函数

🌿7 _coerce_parse_result(results: Union[pkg_resources._vendor.pyparsing.ParseResults, List[Any]]) -> List[Any]

_coerce_parse_result(results: Union[pkg_resources._vendor.pyparsing.ParseResults, List[Any]]) -> List[Any], module=pkg_resources.extern.packaging.markers, line:141 at site-packages\pkg_resources_vendor\packaging\markers.py

🌿8 _format_marker(marker: Union[List[str], Tuple[pkg_resources.extern.packaging.markers.Node, …], str], first: Union[bool, NoneType] = True) -> str

_format_marker(marker: Union[List[str], Tuple[pkg_resources.extern.packaging.markers.Node, …], str], first: Union[bool, NoneType] = True) -> str, module=pkg_resources.extern.packaging.markers, line:148 at site-packages\pkg_resources_vendor\packaging\markers.py

🌿9 _eval_op(lhs: str, op: pkg_resources.extern.packaging.markers.Op, rhs: str) -> bool

_eval_op(lhs: str, op: pkg_resources.extern.packaging.markers.Op, rhs: str) -> bool, module=pkg_resources.extern.packaging.markers, line:189 at site-packages\pkg_resources_vendor\packaging\markers.py

🌿10 _get_env(environment: Dict[str, str], name: str) -> str

_get_env(environment: Dict[str, str], name: str) -> str, module=pkg_resources.extern.packaging.markers, line:211 at site-packages\pkg_resources_vendor\packaging\markers.py

🌿11 _evaluate_markers(markers: List[Any], environment: Dict[str, str]) -> bool

_evaluate_markers(markers: List[Any], environment: Dict[str, str]) -> bool, module=pkg_resources.extern.packaging.markers, line:222 at site-packages\pkg_resources_vendor\packaging\markers.py

🌿12 format_full_version(info: ‘sys._version_info’) -> str

format_full_version(info: ‘sys._version_info’) -> str, module=pkg_resources.extern.packaging.markers, line:249 at site-packages\pkg_resources_vendor\packaging\markers.py

🌿13 default_environment() -> Dict[str, str]

default_environment() -> Dict[str, str], module=pkg_resources.extern.packaging.markers, line:257 at site-packages\pkg_resources_vendor\packaging\markers.py

🔵类

🌿14 pkg_resources._vendor.pyparsing.Forward

Forward, pkg_resources._vendor.pyparsing.Forward, module=pkg_resources._vendor.pyparsing, line:4141 at site-packages\pkg_resources_vendor\pyparsing.py

以后要定义的表达式的前向声明——用于递归语法,如代数中缀表示法。
    当表达式已知时,使用'<<'操作符将其赋值给C{Forward}变量。
    注意:在给C{Forward}赋值时要小心,不要忽略运算符的优先级。
    具体来说,'|'的优先级低于'<<',因此:
        fwdExpr << a | b | c
    实际上会被计算为:
        fwdExpr << (a | b | c)
    转换为使用'<<='操作符可以避免此问题。
    参见:L {ParseResults。使用C{Forward}创建递归解析器的示例。
method
1 copy(self)

kind=method class=Forward objtype=function line:4214 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

2 leaveWhitespace( self )

kind=method class=Forward objtype=function line:4179 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

3 streamline( self )

kind=method class=Forward objtype=function line:4183 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

4 validate( self, validateTrace=[] )

kind=method class=Forward objtype=function line:4190 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

🌿15 pkg_resources._vendor.pyparsing.Group

Group, pkg_resources._vendor.pyparsing.Group, module=pkg_resources._vendor.pyparsing, line:4278 at site-packages\pkg_resources_vendor\pyparsing.py

转换器返回匹配的记号作为一个列表-用于返回C{L{ZeroOrMore}}和C{L{OneOrMore}}表达式的记号。
    示例:
        ident = Word(alphas)
        num = Word(nums)
        term = ident | num
        func = ident + Optional(delimitedList(term))
        print(func.parseString("fn a,b,100"))  # -> ['fn', 'a', 'b', '100']
        func = ident + Group(Optional(delimitedList(term)))
        print(func.parseString("fn a,b,100"))  # -> ['fn', ['a', 'b', '100']]
method
1 postParse( self, instring, loc, tokenlist )

kind=method class=Group objtype=function line:4296 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

🌿16 pkg_resources._vendor.pyparsing.Literal

Literal, pkg_resources._vendor.pyparsing.Literal, module=pkg_resources._vendor.pyparsing, line:2398 at site-packages\pkg_resources_vendor\pyparsing.py

标记以精确匹配指定的字符串。
示例:
        Literal('blah').parseString('blah')  # -> ['blah']
        Literal('blah').parseString('blahfooblah')  # -> ['blah']
        Literal('blah').parseString('bla')  # -> Exception: Expected "blah"
    对于不区分大小写的匹配,使用L{CaselessLiteral}。
    对于关键字匹配(在匹配的字符串前后强制断字),使用L{keyword}或L{CaselessKeyword}。
method
1 parseImpl( self, instring, loc, doActions=True )

kind=method class=Literal objtype=function line:2431 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

🌿17 pkg_resources._vendor.pyparsing.ParseException

ParseException, pkg_resources._vendor.pyparsing.ParseException, module=pkg_resources._vendor.pyparsing, line:261 at site-packages\pkg_resources_vendor\pyparsing.py

当解析表达式与类不匹配时抛出异常;按名称支持的属性有:
    —lineno     —返回异常文本的行号
    —col        —返回异常文本的列号
    —line       —返回包含异常文本的行
    例:
        try:
            Word(nums).setName("integer").parseString("ABC")
        except ParseException as pe:
            print(pe)
            print("column: {}".format(pe.col))
        prints:
           期望的整数(at char 0), (line:1, col:1)
            column: 1

🌿18 pkg_resources._vendor.pyparsing.ParseResults

ParseResults, pkg_resources._vendor.pyparsing.ParseResults, module=pkg_resources._vendor.pyparsing, line:324 at site-packages\pkg_resources_vendor\pyparsing.py

结构化解析结果,提供访问解析数据的多种方式:
    -作为列表(C{len(results)})
    -通过列表索引(C{results[0], results[1]}等)
    -通过属性(C{results. 0}).<resultsName>} -参见L{ParserElement.setResultsName})
    示例:
        integer = Word(nums)
        date_str = (integer.setResultsName("year") + '/' + integer.setResultsName("month") + '/' + integer.setResultsName("day"))
        # 等效形式:
        # date_str = integer("year") + '/' + integer("month") + '/' + integer("day")

        # parseString返回一个ParseResults对象
        result = date_str.parseString("1999/12/31")

        def test(s, fn=repr):
            print("%s -> %s" % (s, fn(eval(s))))
        test("list(result)")
        test("result[0]")
        test("result['month']")
        test("result.day")
        test("'month' in result")
        test("'minutes' in result")
        test("result.dump()", str)
    打印:
        list(result) -> ['1999', '/', '12', '/', '31']
        result[0] -> '1999'
        result['month'] -> '12'
        result.day -> '31'
        'month' in result -> True
        'minutes' in result -> False
        result.dump() -> ['1999', '/', '12', '/', '31']
        - day: 31
        - month: 12
        - year: 1999
method
1 append( self, item )

kind=method class=ParseResults objtype=function line:605 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

将单个元素添加到ParseResults元素列表的末尾。
    例如:
        print(OneOrMore(Word(nums)).parseString("0 123 321")) # -> ['0', '123', '321']
    #使用解析动作计算解析的整数的总和,并将其添加到末尾
        def append_sum(tokens):
            tokens.append(sum(map(int, tokens)))
        print(OneOrMore(Word(nums)).addParseAction(append_sum).parseString("0 123 321")) # -> ['0', '123', '321', 444]
2 asDict( self )

kind=method class=ParseResults objtype=function line:720 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

将命名的解析结果作为嵌套字典返回。
示例:
            integer = Word(nums)
            date_str = integer("year") + '/' + integer("month") + '/' + integer("day")
            
            result = date_str.parseString('12/31/1999')
            print(type(result), repr(result)) # -> <class 'pyparsing.ParseResults'> (['12', '/', '31', '/', '1999'], {'day': [('1999', 4)], 'year': [('12', 0)], 'month': [('31', 2)]})
            
            result_dict = result.asDict()
            print(type(result_dict), repr(result_dict)) # -> <class 'dict'> {'day': '1999', 'year': '12', 'month': '31'}

            # 尽管ParseResults支持类似字典的访问,但有时您只需要一个字典
            import json
            print(json.dumps(result)) # -> Exception: TypeError: ... is not JSON serializable
            print(json.dumps(result.asDict())) # -> {"month": "31", "day": "1999", "year": "12"}
3 asList( self )

kind=method class=ParseResults objtype=function line:704 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

将解析结果作为匹配令牌的嵌套列表返回,所有这些令牌都转换为字符串。
示例:
            patt = OneOrMore(Word(alphas))
            result = patt.parseString("sldkj lsdkj sldkj")
            # 尽管结果以类似字符串的形式打印,但它实际上是一个pyparsing ParseResults
            print(type(result), result) # -> <class 'pyparsing.ParseResults'> ['sldkj', 'lsdkj', 'sldkj']
            
            # 使用asList()创建一个实际的列表
            result_list = result.asList()
            print(type(result_list), result_list) # -> <class 'list'> ['sldkj', 'lsdkj', 'sldkj']
4 asXML( self, doctag=None, namedItemsOnly=False, indent=“”, formatted=True )

kind=method class=ParseResults objtype=function line:766 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

(已弃用)以XML形式返回解析结果。标记是为定义了结果名称的令牌和列表创建的。
 glibc_version_string
5 clear( self )

kind=method class=ParseResults objtype=function line:637 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

清除所有元素和结果名称。
6 copy( self )

kind=method class=ParseResults objtype=function line:755 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

返回C{ParseResults}对象的新副本。
7 dump(self, indent=‘’, depth=0, full=True)

kind=method class=ParseResults objtype=function line:871 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

列出C{parserresults}的内容的诊断方法。
    接受可选的C{indent}参数,以便将此字符串嵌入到其他数据的嵌套显示中。
        示例:
            integer = Word(nums)
            date_str = integer("year") + '/' + integer("month") + '/' + integer("day")
            
            result = date_str.parseString('12/31/1999')
            print(result.dump())
        打印:
            ['12', '/', '31', '/', '1999']
            - day: 1999
            - month: 31
            - year: 12
8 extend( self, itemseq )

kind=method class=ParseResults objtype=function line:619 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

将元素序列添加到ParseResults元素列表的末尾。
示例:
            patt = OneOrMore(Word(alphas))
            #使用解析动作附加匹配字符串的反向,以生成一个palindrome
            def make_palindrome(tokens):
                tokens.extend(reversed([t[::-1] for t in tokens]))
                return ''.join(tokens)
            print(patt.addParseAction(make_palindrome).parseString("lskdj sdlkjf lksd")) # -> 'lskdjsdlkjflksddsklfjkldsjdksl'
9 get(self, key, defaultValue=None)

kind=method class=ParseResults objtype=function line:563 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

返回与给定键匹配的命名结果,或者如果没有这样的名称,则返回给定的C{defaultValue},如果没有指定C{defaultValue},则返回C{None}。
    类似于C{dict.get()}。
    示例:
            integer = Word(nums)
            date_str = integer("year") + '/' + integer("month") + '/' + integer("day")           
            result = date_str.parseString("1999/12/31")
            print(result.get("year")) # -> '1999'
            print(result.get("hour", "not specified")) # -> 'not specified'
            print(result.get("hour")) # -> None
10 getName(self)

kind=method class=ParseResults objtype=function line:834 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

返回此记号表达式的结果名称。当几个不同的表达式可能在特定位置匹配时非常有用。
    示例:
            integer = Word(nums)
            ssn_expr = Regex(r"\d\d\d-\d\d-\d\d\d\d")
            house_number_expr = Suppress('#') + Word(nums, alphanums)
            user_data = (Group(house_number_expr)("house_number") 
                        | Group(ssn_expr)("ssn")
                        | Group(integer)("age"))
            user_info = OneOrMore(user_data)
            
            result = user_info.parseString("22 111-22-3333 #221B")
            for item in result:
                print(item.getName(), ':', item[0])
        prints::
            age : 22
            ssn : 111-22-3333
            house_number : 221B
11 haskeys( self )

kind=method class=ParseResults objtype=function line:506 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

由于keys()返回一个迭代器,因此此方法有助于绕过查找任何已定义结果名称存在的代码。
12 insert( self, index, insStr )

kind=method class=ParseResults objtype=function line:585 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

在已解析令牌列表的位置索引处插入新元素。
    类似于C{list.insert()}。
    例如:
            print(OneOrMore(Word(nums)).parseString("0 123 321")) # -> ['0', '123', '321']
            # 使用解析动作将解析位置插入到解析结果的前面。
            def insert_locn(locn, tokens):
                tokens.insert(0, locn)
            print(OneOrMore(Word(nums)).addParseAction(insert_locn).parseString("0 123 321")) # -> [0, '0', '123', '321']
13 items( self )

kind=method class=ParseResults objtype=function line:502 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

14 keys( self )

kind=method class=ParseResults objtype=function line:494 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

15 pop( self, *args, **kwargs)

kind=method class=ParseResults objtype=function line:511 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

移除并返回指定索引处的项(default=C{last})。
    支持C{pop()}的C{list}和C{dict}语义。
    如果没有传递参数或传递整数参数,它将使用C{list}语义并从解析的令牌列表中弹出令牌。
    如果传递一个非整数参数(很可能是字符串),它将使用C{dict}语义,并从任何已定义的结果名称中弹出相应的值。
    支持第二个默认返回值参数,就像C{dict.pop()}一样。
    例如:
            def remove_first(tokens):
                tokens.pop(0)
            print(OneOrMore(Word(nums)).parseString("0 123 321")) # -> ['0', '123', '321']
            print(OneOrMore(Word(nums)).addParseAction(remove_first).parseString("0 123 321")) # -> ['123', '321']

            label = Word(alphas)
            patt = label("LABEL") + OneOrMore(Word(nums))
            print(patt.parseString("AAB 123 321").dump())

            # 在解析操作中使用pop()来删除命名的结果(注意,对应的值不是#从结果的列表形式中删除)
            def remove_LABEL(tokens):
                tokens.pop("LABEL")
                return tokens
            patt.addParseAction(remove_LABEL)
            print(patt.parseString("AAB 123 321").dump())
        prints::
            ['AAB', '123', '321']
            - LABEL: AAB

            ['AAB', '123', '321']
16 pprint(self, *args, **kwargs)

kind=method class=ParseResults objtype=function line:916 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

使用C{pprint}模块将解析后的结果打印为列表。
参数定义的附加位置参数或关键字参数C{pprint.pprint}方法。
[参见](http://docs.python.org/3/library/pprint.html#pprint.pprint)
示例:
            ident = Word(alphas, alphanums)
            num = Word(nums)
            func = Forward()
            term = ident | num | Group('(' + func + ')')
            func <<= ident + Group(Optional(delimitedList(term)))
            result = func.parseString("fna a,b,(fnb c,d,200),100")
            result.pprint(width=40)
        prints::
            ['fna',
             ['a',
              'b',
              ['(', 'fnb', ['c', 'd', '200'], ')'],
              '100']]
17 values( self )

kind=method class=ParseResults objtype=function line:498 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

🌿19 pkg_resources._vendor.pyparsing.QuotedString

QuotedString, pkg_resources._vendor.pyparsing.QuotedString, module=pkg_resources._vendor.pyparsing, line:2838 at site-packages\pkg_resources_vendor\pyparsing.py

标记,用于匹配用引号分隔的字符串。
    使用以下参数定义:
        —quoteChar      —定义引号分隔字符串的一个或多个字符的字符串
        —escChar        —用于转义引号的字符,通常为反斜杠(default=C{None})
        —escQuote       —用于转义嵌入引号字符串的特殊引号序列(例如SQL用于转义嵌入的“”)(default=C{None})
        —multiline      —指示引号是否可以跨多行的boolean (default=C{False})
        —unquoteResults —boolean表示匹配的文本是否应该不加引号(default=C{True})
        —endQuoteChar   —由一个或多个字符组成的字符串,定义以引号分隔的字符串的结尾(default=C{None} =>与quoteChar相同)
        —convertWhitespaceEscapes       —将转义的空白(C{\t'}, C{\n'}等)转换为实际的空白(default=C{True})
    示例:
        qs = QuotedString('"')
        print(qs.searchString('lsjdf "This is the quote" sldjf'))
        complex_qs = QuotedString('{{', endQuoteChar='}}')
        print(complex_qs.searchString('lsjdf {{This is the "quote"}} sldjf'))
        sql_qs = QuotedString('"', escQuote='""')
        print(sql_qs.searchString('lsjdf "This is the quote with ""embedded"" quotes" sldjf'))
    打印:
        [['This is the quote']]
        [['This is the "quote"']]
        [['This is the quote with "embedded" quotes']]
method
1 parseImpl( self, instring, loc, doActions=True )

kind=method class=QuotedString objtype=function line:2928 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

🌿20 pkg_resources._vendor.pyparsing.ZeroOrMore

ZeroOrMore, pkg_resources._vendor.pyparsing.ZeroOrMore, module=pkg_resources._vendor.pyparsing, line:3923 at site-packages\pkg_resources_vendor\pyparsing.py

给定表达式的零个或多个可选重复。
    参数:
        - expr  -必须匹配0次或多次的表达式
        - stopOn - (default=C{None}) -终止哨兵的表达式(只有当哨兵通常匹配重复表达式时才需要)
    示例:
        类似于L{OneOrMore}
method
1 parseImpl( self, instring, loc, doActions=True )

kind=method class=ZeroOrMore objtype=function line:3939 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

🌿21 pkg_resources.extern.packaging.specifiers.InvalidSpecifier

InvalidSpecifier, pkg_resources.extern.packaging.specifiers.InvalidSpecifier, module=pkg_resources.extern.packaging.specifiers, line:33 at site-packages\pkg_resources_vendor\packaging\specifiers.py

🌿21 pkg_resources.extern.packaging.specifiers.Specifier

Specifier, pkg_resources.extern.packaging.specifiers.Specifier, module=pkg_resources.extern.packaging.specifiers, line:317 at site-packages\pkg_resources_vendor\packaging\specifiers.py

🌿21 pkg_resources.extern.packaging.markers.InvalidMarker

InvalidMarker, pkg_resources.extern.packaging.markers.InvalidMarker, module=pkg_resources.extern.packaging.markers, line:36 at site-packages\pkg_resources_vendor\packaging\markers.py

发现无效标记,用户应参考PEP 508。

🌿22 pkg_resources.extern.packaging.markers.UndefinedComparison

UndefinedComparison, pkg_resources.extern.packaging.markers.UndefinedComparison, module=pkg_resources.extern.packaging.markers, line:42 at site-packages\pkg_resources_vendor\packaging\markers.py

试图对不支持该值的值进行无效操作。

🌿23 pkg_resources.extern.packaging.markers.UndefinedEnvironmentName

UndefinedEnvironmentName, pkg_resources.extern.packaging.markers.UndefinedEnvironmentName, module=pkg_resources.extern.packaging.markers, line:48 at site-packages\pkg_resources_vendor\packaging\markers.py

试图使用环境中不存在的名称。

🌿24 pkg_resources.extern.packaging.markers.Node

Node, pkg_resources.extern.packaging.markers.Node, module=pkg_resources.extern.packaging.markers, line:55 at site-packages\pkg_resources_vendor\packaging\markers.py

method
1 serialize(self) -> str:

kind=method class=Node objtype=function line:65 at …\lib\site-packages\pkg_resources_vendor\packaging\markers.py

🌿25 pkg_resources.extern.packaging.markers.Variable

Variable, pkg_resources.extern.packaging.markers.Variable, module=pkg_resources.extern.packaging.markers, line:69 at site-packages\pkg_resources_vendor\packaging\markers.py

method
1 serialize(self) -> str:

kind=method class=Variable objtype=function line:70 at …\lib\site-packages\pkg_resources_vendor\packaging\markers.py

🌿26 pkg_resources.extern.packaging.markers.Value

Value, pkg_resources.extern.packaging.markers.Value, module=pkg_resources.extern.packaging.markers, line:74 at site-packages\pkg_resources_vendor\packaging\markers.py

method
1 serialize(self) -> str:

kind=method class=Value objtype=function line:75 at …\lib\site-packages\pkg_resources_vendor\packaging\markers.py

🌿27 pkg_resources.extern.packaging.markers.Op

Op, pkg_resources.extern.packaging.markers.Op, module=pkg_resources.extern.packaging.markers, line:79 at site-packages\pkg_resources_vendor\packaging\markers.py

method
1 serialize(self) -> str:

kind=method class=Op objtype=function line:80 at …\lib\site-packages\pkg_resources_vendor\packaging\markers.py

🌿28 pkg_resources.extern.packaging.markers.Undefined

Undefined, pkg_resources.extern.packaging.markers.Undefined, module=pkg_resources.extern.packaging.markers, line:42 at site-packages\pkg_resources_vendor\packaging\markers.py

🌿29 pkg_resources.extern.packaging.markers.Marker

Marker, pkg_resources.extern.packaging.markers.Marker, module=pkg_resources.extern.packaging.markers, line:275 at site-packages\pkg_resources_vendor\packaging\markers.py

method
1 evaluate(self, environment: Optional[Dict[str, str]] = None) -> bool:

kind=method class=Marker objtype=function line:291 at …\lib\site-packages\pkg_resources_vendor\packaging\markers.py

评估一个标记。
    根据环境对给定标记进行计算后返回布尔值。
    environment是一个可选参数,用于覆盖全部或部分确定的环境。
    环境由当前Python进程确定。

🔵私有或局部

30 _coerce_parse_result <function _coerce_parse_result at 0x0000018AFF937828>
31 _format_marker <function _format_marker at 0x0000018AFF93B3A8>
32 _operators {‘in’: <function at 0x0000018AFF93B4C8>, ‘not in’: <function at 0x0000018AFF93B798>, ‘<’: <built-in fu…
33 _eval_op <function _eval_op at 0x0000018AFF93B948>
34 _undefined <pkg_resources.extern.packaging.markers.Undefined object at 0x0000018AFFA6B848>
35 _get_env <function _get_env at 0x0000018AFF93BB88>
36 _evaluate_markers <function _evaluate_markers at 0x0000018AFF93BE58>

🔵剩余

37 doc
38 loader <_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8F8448>
39 spec ModuleSpec(name=‘pkg_resources.extern.packaging.markers’, loader=<_frozen_importlib_external.SourceFileLoader object at 0x0000018AFF8F8448>, origin=‘…\lib\site-packages\pkg_resources\_vendor\packaging\markers.py’)
40 Any typing.Any
41 Callable typing.Callable
42 Dict typing.Dict
43 List typing.List
44 Optional typing.Optional
45 Tuple typing.Tuple
46 Union typing.Union
47 stringEnd stringEnd
48 stringStart stringStart
49 Operator typing.Callable[[str, str], bool]
50 VARIABLE {“implementation_version” | “platform_python_implementation” | “implementation_name” | “python_full_version” | “platform_release” | “platform_version” | “platform_machine” | “platform_system” | “python_version” | “sys_platform” | “os_name” | “os.name” | “sys.platform” | “platform.version” | “platform.machine” | “platform.python_implementation” | “python_implementation” | “extra”}
51 VERSION_CMP {“=" | "” | “>=” | “<=” | “!=” | “~=” | “>” | “<”}
52 MARKER_OP {“=" | "” | “>=” | “<=” | “!=” | “~=” | “>” | “<” | “not in” | “in”}
53 MARKER_VALUE {quoted string, starting with ’ ending with ’ | quoted string, starting with " ending with “}
54 BOOLOP {“and” | “or”}
55 MARKER_VAR {{“implementation_version” | “platform_python_implementation” | “implementation_name” | “python_full_version” | “platform_release” | “platform_version” | “platform_machine” | “platform_system” | “python_version” | “sys_platform” | “os_name” | “os.name” | “sys.platform” | “platform.version” | “platform.machine” | “platform.python_implementation” | “python_implementation” | “extra”} | {quoted string, starting with ’ ending with ’ | quoted string, starting with " ending with “}}
56 MARKER_ITEM Group:({{{“implementation_version” | “platform_python_implementation” | “implementation_name” | “python_full_version” | “platform_release” | “platform_version” | “platform_machine” | “platform_system” | “python_version” | “sys_platform” | “os_name” | “os.name” | “sys.platform” | “platform.version” | “platform.machine” | “platform.python_implementation” | “python_implementation” | “extra”} | {quoted string, starting with ’ ending with ’ | quoted string, starting with " ending with “}} {”=" | "” | “>=” | “<=” | “!=” | “~=” | “>” | “<” | “not in” | “in”} {{“implementation_version” | “platform_python_implementation” | “implementation_name” | “python_full_version” | “platform_release” | “platform_version” | “platform_machine” | “platform_system” | “python_version” | “sys_platform” | “os_name” | “os.name” | “sys.platform” | “platform.version” | “platform.machine” | “platform.python_implementation” | “python_implementation” | “extra”} | {quoted string, starting with ’ ending with ’ | quoted string, starting with " ending with “}}})
57 LPAREN Suppress:(”(”)
58 RPAREN Suppress:(“)”)
59 MARKER_EXPR Forward: …
60 MARKER_ATOM {Group:({{{“implementation_version” | “platform_python_implementation” | “implementation_name” | “python_full_version” | “platform_release” | “platform_version” | “platform_machine” | “platform_system” | “python_version” | “sys_platform” | “os_name” | “os.name” | “sys.platform” | “platform.version” | “platform.machine” | “platform.python_implementation” | “python_implementation” | “extra”} | {quoted string, starting with ’ ending with ’ | quoted string, starting with " ending with “}} {”=" | "" | “>=” | “<=” | “!=” | “~=” | “>” | “<” | “not in” | “in”} {{“implementation_version” | “platform_python_implementation” | “implementation_name” | “python_full_version” | “platform_release” | “platform_version” | “platform_machine” | “platform_system” | “python_version” | “sys_platform” | “os_name” | “os.name” | “sys.platform” | “platform.version” | “platform.machine” | “platform.python_implementation” | “python_implementation” | “extra”} | {quoted string, starting with ’ ending with ’ | quoted string, starting with " ending with “}}}) | Group:({Suppress:(”(“) Forward: … Suppress:(”)")})}
61 MARKER {{stringStart Forward: …} stringEnd}
62 _undefined <pkg_resources.extern.packaging.markers.Undefined object at 0x0000018AFFA6B848>

☘️【pkg_resources.extern.packaging.requirements】

requirements, fullname=pkg_resources.extern.packaging.requirements, file=pkg_resources_vendor\packaging\requirements.py

🔵统计

序号 类别 数量
4 str 4
8 dict 1
9 module 3
10 class 13
11 function 1
13 residual 38
14 system 8
15 private 1
16 all 60

🔵模块

🌿1 re

re, fullname=re, file=re.py

🌿2 string

string, fullname=string, file=string.py

🌿3 urllib

urllib, fullname=urllib, file=urllib_init_.py文章来源地址https://www.toymoban.com/news/detail-458431.html

🔵函数

🌿4 originalTextFor(expr, asString=True)

originalTextFor(expr, asString=True), module=pkg_resources._vendor.pyparsing, line:4681 at site-packages\pkg_resources_vendor\pyparsing.py

帮助器返回给定表达式的原始未标记文本。
    用于将HTML开始标记的已解析字段还原为原始标记文本本身,或将带有中间空白的单独标记还原为原始匹配输入文本。
    默认情况下,返回一个包含原始解析文本的字符串。
    如果可选的C{asString}参数作为C{False}传递,那么返回值是C{L{ParseResults}},其中包含最初匹配的所有结果名称,
    以及a包含来自输入字符串的原始匹配文本的单个令牌。
    因此,如果传递给C{L{originalTextFor}}的表达式包含已定义结果名称的表达式,如果您想保留这些结果名称值,
    则必须将C{asString}设置为C{False}。
    示例:
        src = "this is test <b> bold <i>text</i> </b> normal text "
        for tag in ("b","i"):
            opener,closer = makeHTMLTags(tag)
            patt = originalTextFor(opener + SkipTo(closer) + closer)
            print(patt.searchString(src)[0])
    打印:
        ['<b> bold <i>text</i> </b>']
        ['<i>text</i>']

🔵类

🌿5 pkg_resources._vendor.pyparsing.Combine

Combine, pkg_resources._vendor.pyparsing.Combine, module=pkg_resources._vendor.pyparsing, line:4234 at site-packages\pkg_resources_vendor\pyparsing.py

将所有匹配的令牌连接到单个字符串的转换器。
    默认情况下,匹配模式在输入字符串中也必须是连续的;这可以通过在构造函数中指定C{'nearby=False'}来禁用。
    示例:
        real = Word(nums) + '.' + Word(nums)
        print(real.parseString('3.1416')) # -> ['3', '.', '1416']
        # 也会错误地匹配以下内容
        print(real.parseString('3. 1416')) # -> ['3', '.', '1416']

        real = Combine(Word(nums) + '.' + Word(nums))
        print(real.parseString('3.1416')) # -> ['3.1416']
        # 当有内部空格时不匹配
        print(real.parseString('3. 1416')) # -> Exception: Expected W:(0123...)
method
1 ignore( self, other )

kind=method class=Combine objtype=function line:4261 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

2 postParse( self, instring, loc, tokenlist )

kind=method class=Combine objtype=function line:4268 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

🌿6 pkg_resources._vendor.pyparsing.Literal

Literal, pkg_resources._vendor.pyparsing.Literal, module=pkg_resources._vendor.pyparsing, line:2398 at site-packages\pkg_resources_vendor\pyparsing.py

🌿6 pkg_resources._vendor.pyparsing.Optional

Optional, pkg_resources._vendor.pyparsing.Optional, module=pkg_resources._vendor.pyparsing, line:3962 at site-packages\pkg_resources_vendor\pyparsing.py

给定表达式的可选匹配。
参数说明:
    —expr           —必须匹配0次或多次的表达式。
    —default(可选)    —如果找不到可选表达式,则返回default值。
    例如:
        # 美国邮政编码可以是5位zip,加上可选的4位限定符
        zip = Combine(Word(nums, exact=5) + Optional('-' + Word(nums, exact=4)))
        zip.runTests('''
            # traditional ZIP code
            12345
            # ZIP+4 form
            12101-0001
            # invalid ZIP
            98765-
            ''')
    打印:
        # traditional ZIP code
        12345
        ['12345']

        # ZIP+4 form
        12101-0001
        ['12101-0001']

        # invalid ZIP
        98765-
             ^
        FAIL: Expected end of text (at char 5), (line:1, col:6)
method
1 parseImpl( self, instring, loc, doActions=True )

kind=method class=Optional objtype=function line:4003 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

🌿7 pkg_resources._vendor.pyparsing.ParseException

ParseException, pkg_resources._vendor.pyparsing.ParseException, module=pkg_resources._vendor.pyparsing, line:261 at site-packages\pkg_resources_vendor\pyparsing.py

🌿7 pkg_resources._vendor.pyparsing.Regex

Regex, pkg_resources._vendor.pyparsing.Regex, module=pkg_resources._vendor.pyparsing, line:2765 at site-packages\pkg_resources_vendor\pyparsing.py

用于匹配与给定正则表达式匹配的字符串的标记。
    用字符串定义,指定正则表达式的形式可被内置Python re模块识别。
    如果给定的正则表达式包含命名组(使用 C{(?P<name>...)} 定义),这些将被保留为命名解析结果。
    例子:
        realnum = Regex(r"[+-]?\d+\.\d*")
        date = Regex(r'(?P<year>\d{4})-(?P<month>\d\d?)-(?P<day>\d\d?)')
        # [参见](http://stackoverflow.com/questions/267399/how-do-you-match-only-valid-roman-numerals-with-a-regular-expression)
        roman = Regex(r"M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})")
data

1 compiledREtype=<class ‘re.Pattern’> kind:data type:type class:<class ‘pkg_resources._vendor.pyparsing.Regex’>

method
2 parseImpl( self, instring, loc, doActions=True )

kind=method class=Regex objtype=function line:2813 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

🌿8 pkg_resources._vendor.pyparsing.Word

Word, pkg_resources._vendor.pyparsing.Word, module=pkg_resources._vendor.pyparsing, line:2606 at site-packages\pkg_resources_vendor\pyparsing.py

用于匹配由允许的字符集组成的单词的标记。
    定义为包含所有允许的初始字符的字符串,包含允许的主体字符的可选字符串(如果省略,默认为初始字符集),以及可选的最小、最大和/或精确长度。
    C{min}的默认值是1(最小值< 1无效);C{max}和C{exact}的默认值均为0,表示没有最大或确切的长度限制。
    可选的C{excludchars}参数可以列出可能在输入的C{bodyChars}字符串中找到的字符;例如,用于定义除一两个字符外的所有可打印的单词。
    L{srange}用于定义用于定义C{Word}表达式的自定义字符集字符串,使用正则表达式字符集的范围表示法。
    一个常见的错误是使用C{Word}来匹配特定的字面值字符串,如C{词(“地址”)}。
    记住,C{Word}使用string参数来定义I{sets}的可匹配字符。
    此表达式将匹配“Add”、“AAA”、“dare”或由字符“A”、“d”、“r”、“e”和“s”组成的任何其他单词。
    要匹配精确的字面值字符串,请使用L{literal}或L{Keyword}。
    pyparsing包括用于构建word的帮助字符串:
     - L{alphas}
     - L{nums}
     - L{alphanums}
     - L{hexnums}
     - L{alphas8bit}  (ASCII范围内的字母字符128-255 -重音,渐变,变音符等)
     - L{punc8bit} (ASCII范围内的非字母字符128-255 -货币,符号,上标,变音符号等)
     - L{printables} (任何非空白字符)
    示例:
        # 一个由数字组成的单词
        integer = Word(nums) # 相当于word("0123456789")或word (srange("0-9"))
        # 一个带有大写开头的单词,以及零个或多个小写
        capital_word = Word(alphas.upper(), alphas.lower())
        # 主机名是字母数字,带有alpha开头,'-'
        hostname = Word(alphas, alphanums+'-')
        # roman number(不是严格的解析器,接受无效的字符组合)
        roman = Word("IVXLCDM")
        # 任何非空白字符的字符串,','除外
        csv_value = Word(printables, excludeChars=",")
method
1 parseImpl( self, instring, loc, doActions=True )

kind=method class=Word objtype=function line:2707 at …\lib\site-packages\pkg_resources_vendor\pyparsing.py

🌿9 pkg_resources._vendor.pyparsing.ZeroOrMore

ZeroOrMore, pkg_resources._vendor.pyparsing.ZeroOrMore, module=pkg_resources._vendor.pyparsing, line:3923 at site-packages\pkg_resources_vendor\pyparsing.py

🌿9 pkg_resources.extern.packaging.markers.Marker

Marker, pkg_resources.extern.packaging.markers.Marker, module=pkg_resources.extern.packaging.markers, line:275 at site-packages\pkg_resources_vendor\packaging\markers.py

🌿9 pkg_resources.extern.packaging.specifiers.LegacySpecifier

LegacySpecifier, pkg_resources.extern.packaging.specifiers.LegacySpecifier, module=pkg_resources.extern.packaging.specifiers, line:245 at site-packages\pkg_resources_vendor\packaging\specifiers.py

🌿9 pkg_resources.extern.packaging.specifiers.Specifier

Specifier, pkg_resources.extern.packaging.specifiers.Specifier, module=pkg_resources.extern.packaging.specifiers, line:317 at site-packages\pkg_resources_vendor\packaging\specifiers.py

🌿9 pkg_resources.extern.packaging.specifiers.SpecifierSet

SpecifierSet, pkg_resources.extern.packaging.specifiers.SpecifierSet, module=pkg_resources.extern.packaging.specifiers, line:638 at site-packages\pkg_resources_vendor\packaging\specifiers.py

🌿9 pkg_resources.extern.packaging.requirements.InvalidRequirement

InvalidRequirement, pkg_resources.extern.packaging.requirements.InvalidRequirement, module=pkg_resources.extern.packaging.requirements, line:27 at site-packages\pkg_resources_vendor\packaging\requirements.py

发现无效需求,用户应参考PEP 508。

🌿10 pkg_resources.extern.packaging.requirements.Requirement

Requirement, pkg_resources.extern.packaging.requirements.Requirement, module=pkg_resources.extern.packaging.requirements, line:87 at site-packages\pkg_resources_vendor\packaging\requirements.py

解析需求。
    将给定的需求字符串解析为它的各个部分,例如名称、说明符、URL和其他部分。
    在格式不正确的需求字符串上引发InvalidRequirement。

🔵私有或局部

11 _VERSION_SPEC […]

🔵剩余

12 doc
13 loader <frozen_importlib_external.SourceFileLoader object at 0x0000018AFF798DC8>
14 spec ModuleSpec(name=‘pkg_resources.extern.packaging.requirements’, loader=<frozen_importlib_external.SourceFileLoader object at 0x0000018AFF798DC8>, origin='…\lib\site-packages\pkg_resources\vendor\packaging\requirements.py’)
15 List typing.List
16 TOptional typing.Optional
17 Set typing.Set
18 stringEnd stringEnd
19 stringStart stringStart
20 MARKER_EXPR {Empty Forward: … Empty}
21 ALPHANUM W:(abcd…)
22 LBRACKET Suppress:(“[”)
23 RBRACKET Suppress:(“]”)
24 LPAREN Suppress:(“(”)
25 RPAREN Suppress:(“)”)
26 COMMA Suppress:(“,”)
27 SEMICOLON Suppress:(“;”)
28 AT Suppress:(“@”)
29 PUNCTUATION W:(-
.)
30 IDENTIFIER_END {W:(abcd…) | {[W:(-
.)]… W:(abcd…)}}
31 IDENTIFIER Combine:({W:(abcd…) [{W:(abcd…) | {[W:(-
.)]… W:(abcd…)}}]…})
32 NAME Combine:({W:(abcd…) [{W:(abcd…) | {[W:(-.)]… W:(abcd…)}}]…})
33 EXTRA Combine:({W:(abcd…) [{W:(abcd…) | {[W:(-
.)]… W:(abcd…)}}]…})
34 URI Re:(‘[^ ]+’)
35 URL {Suppress:(“@”) Re:(‘[^ ]+’)}
36 EXTRAS_LIST {Combine:({W:(abcd…) [{W:(abcd…) | …}
37 EXTRAS {Suppress:(“[”) [{Combine:({W:(abcd…) [{W:(abcd…) | {[W:(-.)]… }
38 VERSION_PEP440 Re:(“\n (?P(~=||!=|<=|>=|<|>|=))\n …)
39 VERSION_LEGACY Re:('\n (?P(|!=|<=|>=|<|>))\n …)
40 VERSION_ONE {Re:("\n (?P(~=|
|!=|<=|>=|<|>|=))\n …)
41 VERSION_MANY Combine:({{Re:("\n (?P(~=|
|!=|<=|>=|<|>|=))\n …)
42 _VERSION_SPEC [{{Suppress:(“(”) Combine:({{Re:("\n (?P(~=|
|!=|<=|>=|<|>|===))\n …)
43 VERSION_SPEC {Empty [{{Suppress:(”(“) Combine:({{Re:(”\n …)
44 MARKER_SEPARATOR Suppress:(“;”)
45 MARKER {Suppress:(“;”) {Empty Forward: … Empty}}
46 VERSION_AND_MARKER {{Empty [{{Suppress:(“(”) Combine:({{Re:(“\n …)
47 URL_AND_MARKER {Suppress:(”@“) Re:(‘[^ ]+’) [{Suppress:(”;") {Empty Forward: … Empty}}]}
48 NAMED_REQUIREMENT {Combine:({W:(abcd…) [{W:(abcd…) | {[W:(-
.)]… W:(abcd…)}}]…}) }
49 REQUIREMENT {stringStart Combine:({W:(abcd…) [{W:(abcd…) | {[W:(-_.)]… W:(abcd…)}}]…})}

☘️【sys】

sys, fullname=sys, file=

☘️【os】

os, fullname=os, file=os.py

☘️【io】

io, fullname=io, file=io.py

☘️【time】

time, fullname=time, file=

☘️【re】

re, fullname=re, file=re.py

☘️【types】

types, fullname=types, file=types.py

☘️【zipfile】

zipfile, fullname=zipfile, file=zipfile.py

☘️【zipimport】

zipimport, fullname=zipimport, file=

zipimport提供了从Zip归档文件中导入Python模块的支持。

☘️【warnings】

warnings, fullname=warnings, file=warnings.py

☘️【stat】

stat, fullname=stat, file=stat.py

☘️【functools】

functools, fullname=functools, file=functools.py

☘️【pkgutil】

pkgutil, fullname=pkgutil, file=pkgutil.py

☘️【operator】

operator, fullname=operator, file=operator.py

☘️【platform】

platform, fullname=platform, file=platform.py

☘️【collections】

collections, fullname=collections, file=collections_init_.py

☘️【plistlib】

plistlib, fullname=plistlib, file=plistlib.py

☘️【email】

email, fullname=email, file=email_init_.py

☘️【errno】

errno, fullname=errno, file=

☘️【tempfile】

tempfile, fullname=tempfile, file=tempfile.py

☘️【textwrap】

textwrap, fullname=textwrap, file=textwrap.py

☘️【itertools】

itertools, fullname=itertools, file=

☘️【inspect】

inspect, fullname=inspect, file=inspect.py

☘️【ntpath】

ntpath, fullname=ntpath, file=ntpath.py

☘️【posixpath】

posixpath, fullname=posixpath, file=posixpath.py

☘️【importlib】

importlib, fullname=importlib, file=importlib_init_.py

☘️【_imp】

_imp, fullname=_imp, file=

☘️【importlib.machinery】

machinery, fullname=importlib.machinery, file=importlib\machinery.py

查找器、加载器、钩子等的机制。

☘️【string】

string, fullname=string, file=string.py

☘️【copy】

copy, fullname=copy, file=copy.py

☘️【sre_constants】

sre_constants, fullname=sre_constants, file=sre_constants.py

    sre内部支持模块

☘️【pprint】

pprint, fullname=pprint, file=pprint.py

☘️【traceback】

traceback, fullname=traceback, file=traceback.py

☘️【struct】

struct, fullname=struct, file=struct.py

☘️【contextlib】

contextlib, fullname=contextlib, file=contextlib.py

☘️【subprocess】

subprocess, fullname=subprocess, file=subprocess.py

☘️【logging】

logging, fullname=logging, file=logging_init_.py

☘️【sysconfig】

sysconfig, fullname=sysconfig, file=sysconfig.py

☘️【abc】

abc, fullname=abc, file=abc.py

☘️【urllib】

urllib, fullname=urllib, file=urllib_init_.py

到了这里,关于一图看懂 pkg_resources 模块:包资源API,资料整理+笔记(大全)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 一图看懂 setuptools 模块:一个功能齐全、积极维护且稳定的库,旨在方便打包Python项目,资料整理+笔记(大全)

    本文由 大侠(AhcaoZhu)原创,转载请声明。 链接: https://blog.csdn.net/Ahcao2008 全文介绍python的 setuptools 模块(一个功能齐全、积极维护且稳定的库,旨在方便打包Python项目)、函数、类及类的方法和属性。 它通过代码抓取并经AI智能翻译和人工校对。 是一部不可多得的权威字典类

    2024年02月06日
    浏览(48)
  • Python的pkg_resources库介绍

    一、pkg_resources库的使用场景和功能: pkg_resources库是Python中的一个工具库,提供了对Python包和发布工具的访问和管理功能。它主要用于获取、管理和操作Python包的元数据信息,如获取包的版本、作者、依赖关系等。pkg_resources库可以帮助开发者更方便地操作Python包,实现包的发

    2024年02月22日
    浏览(25)
  • 一图看懂6G应用及用例研究

    关注公号回复“220622”下载 《Next G Alliance Report: 6G Applications and Use Cases》原文 下一代通信联盟(Next G Alliance)是由美国电信行业解决方案联盟ATIS(Alliance for Telecommunications Industry Solutions)牵头于2020年10月成立的,由于其主要目的是研究6G所以也被称为美国6G联盟。联盟成员包

    2024年01月19日
    浏览(52)
  • 【一图看懂选择排序】——选择排序和堆排序

    前文知识清单: 直接选择排序通过每一轮的比较,找到最大值和最小值,将最大值的节点跟右边交换,最小值节点跟左边交换,达到排升序的效果。 一图看懂直接选择排序: 每一轮比较都需要遍历数组,查找最大最小值,第一轮遍历N个数据,第二轮是N-2个数据,第三轮N-

    2023年04月15日
    浏览(34)
  • ImportError: No module named pkg_resources

    当使用 pip 命令时,如果出现 ImportError: No module named pkg_resources 错误, 通常表示你的 Python 环境中缺少了 setuptools 模块或该模块损坏 。 解决此问题的一种方法是重新安装或升级 setuptools 模块。你可以按照以下步骤进行操作: 打开终端并以管理员(root)身份运行。 使用以下命

    2024年02月14日
    浏览(38)
  • 一图看懂CodeArts Release三大特性,带你玩转发布管理服务

    体验通道 : 发布管理 CodeArts Release-华为云

    2024年02月06日
    浏览(50)
  • 数据中台开源技术栈:一图看懂全面的数据管理与应用架构

          随着数字化时代的到来,数据管理和应用架构变得越来越重要。数据平台作为一个集中管理和利用数据的架构,为组织提供了促进数据驱动决策和业务创新的能力。本文通过一幅图表,将数据平台技术栈的组成部分清晰呈现,助您深入了解数据中台的全面数据管理与应

    2024年04月10日
    浏览(47)
  • 想要成为AIGC工程师, 却不知从哪里开始学习?近屿全新推出一图看懂!

    在这个AI技术飞速发展的时代,在人们常常警惕AI将取代自己的工作的时候,一个另类的说法却悄然流行:“AI不会取代你的工作,会取代你的是掌握了AI技能的人。”这不仅仅是一个警示,更是一个机遇。随着AI工具如ChatGPT、Midjourney、Stable Diffusion(SD)等的普及,掌握AIGC(人

    2024年04月27日
    浏览(50)
  • 通过几张图看懂chatGPT发展史

    ChatGPT 是由 OpenAl 团队研发创造,OpenAl 是由创业家埃隆-马斯克、美国创业孵化器 Y Combinator 总裁阿尔特曼、全球在线支付平台 PayPal 联合创始人彼得-蒂尔等人于 2015 年 在旧金山创立的一家非盈利的 AI 研究公司,拥有多位硅谷重量级人物的资金支持,启动资金 高达 10 亿美金;

    2024年02月11日
    浏览(44)
  • 网络安全——一张图看懂HTTPS建立过程

    · 准备工作(对应图中prepare1234) · 发起链接 · 最后 关于网络安全加密的介绍可以看之前文章: (数据的加密与签名) HTTPS建立过程相当复杂,下图为示意图,可以有整体认识,一般我们编程知道这些已足够。 如果你想仿照HTTPS实现类似加密,可以阅读下具体过程,作为参

    2024年04月12日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包