0、__name__是什么Python 为模块、类、函数等自动声明了一个__name__属性(变量),用于标识模块、类、函数等的名称。对于类和函数而言,__name__的值总是与类和函数的名称一致。而对于模块,__name__会因为模块的加载方式的不同而不同,当一个文件被直接运行时,__name__的值就是__main__;而当文件被import,即被当模块使用时,__name__的值则是模块的路
首先明确一个概念,在Python任意一个单独的py文件叫做模块(Module), 而包指的是一个下面有__init__.py文件的文件夹,比如路径test/__init__.py如果存在的话,那么test就是一个包(Package)。__name__Python引入的一系列全局变量之一,它的值就是它所在模块的名字,但是又有一点不同。我们知道,在 使用 Import 引入一个模块时,这个模块的顶
1.__name__属性 一个模块被另一个程序第一次引入时,其主程序将运行。如果我们想在模块被引入时,模块
原创 2022-07-14 08:52:11
126阅读
Python 的__name__属性: 一个模块被另一个程序第一次引入时,其主程序将运行。 如果我们想在模块被引入时,模块的某一程序块不执行,我们可以用__name__属性来使该程序块仅在该模块自身运行时执行。 每个模块都有一个__name__属性,当其值是'__main__'时,表明该模块自身在
转载 2017-11-01 18:36:00
95阅读
2评论
大家应该已经在很多 Python 脚本里见到过 __name__ 变量了吧?它经常是以类似这样的方式出现在我们的程序里:if __name__ == '__main__': main()今天,我就带大家详细扒一扒这个内置变量的用法,示范一下在你写的 Python 模组里要怎么用到它。   这个 __name__ 拿来做什么的?作为 Python 的内置变量,__name
Python的模块(.py文件)在创建之初会自动加载一些内建变量,__name__就是其中之一。Python模块通常会定义很多变量和函数,这些变量和函数相当于模块的一个功能,模块被导入到别的文件,可以调用这些变量和函数。那么这时 __name__ 的作用就彰显了,它可以标识模块的名字,可以显示一个模块的某功能是被自己执行还是被别的文件调用执行,假设模块A、B,模块A自己定义了功能C,模块B
转载 2023-06-25 19:11:25
116阅读
if __name__=="__main__"的作用
原创 2020-02-19 19:42:17
817阅读
一、name变量1.,我们首先直接使用name(不进行定义),若能正常使用,则说明该变量为系统内置变量,如下图所示:从上图中可以知道,name为系统的内置变量。2.当name在当前执行的文件中使用时,它的值为main;但是当name在被调用的模块时,其值为被调用文件所在的路径,见下图:综上所述:name变量时所属系统变量,当在执行文件内使用时其值为main;但是当其他被调用模块中使用时,其值为被
原创 2018-04-08 15:40:28
7151阅读
2点赞
1 命名空间(namespace)A namespace is a mapping from names to objects命名空间是名字和对象的映射。可以简答地把namespace理解为一个字典,实际上很多当前的Python实现namespace就是用的字典。各个命名空间是独立的,没有任何关系的,因此一个命名空间中不能有重名,但不同的命名空间是可以重名而没有任何影响。常见的命名空间包括:pyt
1、解决的问题:   在python,每个py文件都是一个模块,也都是一个可执行文件,即包含main方法。因此,对每个py文件,可以单独运行,也可以import它给其他客户使用,这两种情况不一样,因为客户import一个py文件,并不想运行它。如何区分这两种情况呢? 2、如何解决:   __name__属性,当运行py文件时,它的值是__main__,当import的时候,它的值是文件名。这样在
转载 2013-11-15 16:14:00
62阅读
2评论
py 文件直接当脚本运行时:class Student(object): def __init__(self, name,score): self.name = name sel...
转载 2017-08-15 10:16:00
64阅读
Python的模块(.py文件)在创建之初会自动加载一些内建变量,__name__就是其中之一。Python模块通常会定义很多变量和函数,这些变量和函数相当于模块的一个功能,模块被导入到别的文件,可以调用这些变量和函数。那么这时 __name__ 的作用就彰显了,它可以标识模块的名字,可以显示一个模块的某功能是被自己执行还是被别的文件调用执行,假设模块A、B,模块A自己定义了功能C,模块B
一、__doc__属性 前言 __doc__ 为python模块的内置属性【使用 方法名.__doc__ 调用】,__doc__ 为模块字符串,模块字符串写在Python
原创 2022-06-17 17:12:26
945阅读
以.py作为后缀的Python代码文件,有两种使用方式:第一种方式是直接运行,另一种方式是作为模块被别的py文件导入。通过语句“if name == ‘main’,就能判断出一个py文件是直接运行还是作为模块文件被别的py文件导入的,进而通过这个判断实现一些代码的不被执行
原创 2022-08-16 01:42:23
133阅读
一 名称空间名称空间即存放名字与对象映射/绑定关系的地方。对于x=3,Python会申请内存空间存放对象3,然后将名字x与3的绑定关系存放于名称空间中,del x表示清除该绑定关系。 在程序执行期间最多会存在三种名称空间1.1 内建名称空间伴随python解释器的启动/关闭而产生/回收,因而是第一个被加载的名称空间,用来存放一些内置的名字,比如内建函数名>>> max <b
if name == 'main': Python解释器在导入模块时,会将模块没有缩进的代码全部执行一遍(模块就是一个独立的Python文件)。 开发人员通常会在模块下方增加一些测试代码,为了避免这些测试代码在模块被导入后执行,可以利用__name__属性。 __name__属性 __name__ ...
转载 2021-07-24 02:29:00
351阅读
2评论
关于__name__: 这几天开始学习Python,遇到一些问题,也解决了一些问题。 其中if __name__ == '__main__':这句估计很多和我一样的初学者都是不求甚解。这里作一下解释: 1:__name__是一个变量。前后加了双下划线是因为是因为这是系统定义的名字。普通变量不要使用此 ...
转载 2021-09-03 17:05:00
84阅读
2评论
#hello.pydef sayHello():    str="hello"    print(str);if __name__ == "__main__":    print ('This is main of module "hello.py"')    sayHello()python作为一种脚本语言,我们用p
转载 精选 2016-02-26 13:56:38
387阅读
Python当中,如果代码写得规范一些,通常会写上一句“if name==’main:”作为程序的入口,但似乎没有这么一句代码,程序也能正常运行。这句代码多余吗?原理又在哪里?
原创 2022-05-20 22:37:21
158阅读
这几天开始学习Python,遇到一些问题,也解决了一些问题。其中if __ name__ == ‘__ main__’:这句估计很多和我一样的初学者都是不求甚解。这里作一下解释:1:__ name__是一个变量。前后加了爽下划线是因为是因为这是系统定义的名字。普通变量不要使用此方式命名变量。2:Python有很多模块,而这些模块是可以独立运行的!这点不像C++和C的头文件。3:impor...
转载 2021-07-20 14:39:17
74阅读
  • 1
  • 2
  • 3
  • 4
  • 5