服务器之家

服务器之家 > 正文

python模块内置属性概念及实例

时间:2021-09-05 00:52     来源/作者:小妮浅浅

我们在讲模块的时候,有些人看到了内置属性,就把它们当做函数,其实还是有区别的,这里需要为大家进行明确。我们所看到的函数两边带有双下划线,这是python模块中内置属性的体现。下面我们就内置属性进性说明,并列出几种内置属性的方法,最后带来实例供大家体会。

1、说明

一种导入的方法,可以使用 import 直接把模块内(函数,变量的)名称导入到当前操作模块。

2、内置属性

  • __doc__:模块中用于描述的文档字符串
  • __name__:模块名
  • __file__:模块保存的路径
  • __dict__ : 类的属性(包含一个字典,由类的数据属性组成)
  • __module__: 类定义所在的模块(类的全名是'__main__.className',如果类位于一个导入模块mymod中,那么className.__module__ 等于 mymod)
  • __bases__ : 类的所有父类构成元素(包含了一个由所有父类组成的元组)

3、实例

?
1
2
3
print(__doc__)
print(__file__)
print(__name__)

内容扩展:

查看模块的内置属性

?
1
2
3
4
5
6
7
8
9
10
11
12
# test.py
# -*- coding: utf-8 -*-
"""
some doc
"""
import os
var1 = None
class Person(object):
  pass
 
if __name__ == "__main__":
  print(dir()) # ['Person', '__annotations__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'os', 'var1']

通过dir()方法我们可以获取到该模块的所有的显式或隐式的属性或方法;可看到隐式的属性有__annotations__,__builtins__,__cached__,__annotations__,__doc__,__file__,__loader__,__name__;

我们打印一下每个魔法属性:

?
1
2
3
4
5
6
7
8
9
10
11
print(__name__) # __main__
print(__annotations__) # {}
print(__builtins__) # <module 'builtins' (built-in)>
print(__cached__) # None
print(__doc__) # some doc
print(__file__) # .../test.py
print(__loader__) # <_frozen_importlib_external.SourceFileLoader object at 0x000002398E831F28>
print(__package__) # None
print(__spec__) # None
 
# 其中__name__、__doc__、__file__、__package__是可以直接使用的,其它的内置属性一般不允许直接使用。

到此这篇关于python模块内置属性概念及实例的文章就介绍到这了,更多相关python模块有哪些内置属性内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://www.py.cn/jishu/jichu/23776.html

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
返回顶部