python import 问题

我在同一个目录下建立了两个文件,分别为send_door.py和time_door.py。

time_door.py

print "HI,BOY!"
print "欢迎来到时空隧道!"

send_door.py

import time
import time_door #这样调用会直接打开time_door.py,为什么?

print "即将进入时空门"
time.sleep(3)
time_door() #这样是错的吗?

我想在send.py中实现对time_door.py的内容的调用,请问如何实现?
上述send_door代码执行时会直接打开time_door.py的内容。
刚开始学习python。
谢谢解答!

阅读 4k
3 个回答
# time_door.py
# coding=utf-8

def door():
    print "HI,BOY!"
    print "欢迎来到时空隧道!"    #有中文需在顶部添加coding注释

模块中最外部的代码如果不加处理则会自动执行,因此需要放到函数、类等容器中。

# send_door.py
# coding=utf-8

import time
import time_door

print "即将进入时空门"    
time.sleep(3)
time_door.door()

输出结果:

 HI,BOY!
 欢迎来到时空隧道!

import 一个模块当然是把模块里面的东西导进来,print语句自然会运行,不想让它运行就写成函数

要区分好模块和函数,你定义的time_door是模块不是函数

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题