# output.py def show():print(_name_)#test.py import output if _name_==' _main_':output.show()
时间: 2024-03-20 21:44:09 浏览: 82
这段代码有两个问题:
1. `show()`函数中的变量`_name_`没有被定义,应该使用`__name__`变量。
2. `if _name_==' _main_':`中的下划线和空格有误,应该是`if __name__ == '__main__':`。
正确的代码应该是:
```
# output.py
def show():
print(__name__)
# test.py
import output
if __name__ == '__main__':
output.show()
```
这样运行test.py时,输出结果就是 `_main_test`,其中_main表示当前模块是主模块,而test是模块的名称。
相关问题
3.output.py文件和test.py文件内容如下,且output.py和test.py位于同一文件夹中, 那么运行test.py的输出结果是( # output.py def show():print(_name_)#test.py import output if _name_==' _main_':output.show()output (A) (B)__name_(C)_main_test (D)
运行test.py的输出结果是 (C) _main_test。
原因是,在test.py中,`_name_`变量没有被定义,所以会报错。正确的写法应该是`__name__`,即双下划线开头和结尾的特殊变量。
而在output.py中,如果执行`show()`函数,会输出`_name_`变量的值,但此时这个变量没有被定义,也会报错。如果想要输出模块名,应该使用`__name__`变量,如下所示:
```
# output.py
def show():
print(__name__)
# test.py
import output
if __name__ == '__main__':
output.show()
```
这样运行test.py时,输出结果就是 (C) _main_test,其中_main表示当前模块是主模块,而test是模块的名称。
output.py文件和test.py文件内容如下,且output.py和test.py位于同一文件夹中,那么运行test.py的输出结果是( )。 #output.py def show(): print(__name__) #test.py import output if __name__=='__main__': output.show()
运行test.py的输出结果是字符串"output",因为output.py中的show()函数打印了模块的名称,而test.py中使用import导入了output模块,因此在执行output.show()时,会输出output模块的名称。注意,if __name__=='__main__'的作用是判断当前模块是否为主模块(即被直接执行的模块),如果是,则执行if语句中的代码,否则不执行。在本例中,test.py是主模块,因此if语句中的代码会被执行。
阅读全文