python中__name__函数的用法
时间: 2023-10-02 15:13:51 浏览: 63
__name__函数是一个内置的特殊变量,在Python中用于获取当前模块的名称。它通常用于判断模块是作为独立运行的脚本还是作为被导入的模块。
当一个Python文件作为主程序直接运行时,__name__的值将被设置为'__main__',即模块的名称为'__main__'。这时可以在脚本中添加一些测试代码,只有当该脚本作为主程序运行时才会执行。
例如,假设有一个名为example.py的脚本文件,其中包含如下代码:
```
def func():
print("Hello, CSDN!")
if __name__ == "__main__":
func()
```
当我们直接运行example.py时,输出结果为"Hello, CSDN!"。而如果将example.py作为模块导入到另一个程序中,不会执行if条件下的代码。
这种用法可以方便地将模块作为库使用,同时也可以在需要时作为独立的脚本执行一些特定操作。
相关问题
python函数中__name__的用法
在Python中,每个模块都有一个内置的变量__name__,它表示当前模块的名称。当模块被直接运行时,__name__的值为'__main__',当模块被导入时,__name__的值为模块的名称。这个变量通常用于判断模块是被导入还是被直接运行。
例如,我们有一个名为example.py的模块,其中包含以下代码:
```
def foo():
print('Hello, world!')
if __name__ == '__main__':
foo()
```
当我们直接运行example.py时,输出结果为'Hello, world!'。这是因为__name__的值为'__main__',所以if语句中的代码会被执行。但是,如果我们在另一个脚本中导入example模块并调用foo函数,if语句中的代码将不会被执行。
python中__repr__的用法
__repr__是Python中的一个特殊方法,用于返回一个对象的字符串表示形式。它主要用于调试和开发过程中,可以提供一个可读性较高的字符串,以便更好地理解对象的内容。
当我们在控制台或交互式环境中直接输入一个对象时,会调用该对象的__repr__方法来显示对象的字符串表示形式。一般来说,__repr__方法返回的字符串应该是能够通过eval()函数来重新创建相同对象的代码。
以下是一个简单的示例:
```
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def __repr__(self):
return f"Person(name='{self.name}', age={self.age})"
person = Person("Alice", 25)
print(person) # 输出:Person(name='Alice', age=25)
```
在上面的示例中,Person类定义了一个__repr__方法,