首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >多次从文件中运行python文件

多次从文件中运行python文件
EN

Stack Overflow用户
提问于 2016-12-14 14:51:41
回答 1查看 947关注 0票数 0

基本上,我正在制作一个塔防御游戏,我有一个名为enemy.py的python文件,里面有圆形,还有一个名为main.py的文件,它是圆形屏幕的末尾。我希望main.py在每一轮结束后执行enemy.py,但是它给了我第二次错误。我使用导入函数打开其他文件。另外,能不能有人帮我做,这样错误就没那么大了,我很困惑!

代码语言:javascript
复制
Traceback (most recent call last):
  File "H:\ICT\A level\Computing\Tower Defense Code\main.py", line 62, in <module>
    createMenu()
  File "H:\ICT\A level\Computing\Tower Defense Code\main.py", line 9, in     createMenu
    newRound()
  File "H:\ICT\A level\Computing\Tower Defense Code\main.py", line 23, in     newRound
    cancelLoop()
  File "H:\ICT\A level\Computing\Tower Defense Code\main.py", line 38, in     cancelLoop
    startRound()
  File "H:\ICT\A level\Computing\Tower Defense Code\main.py", line 41, in     startRound
    import enemy.py
  File "H:\ICT\A level\Computing\Tower Defense Code\enemy.py", line 107, in     <module>
    enemy.draw(screen)
  File "H:\ICT\A level\Computing\Tower Defense Code\enemy.py", line 35, in     draw
    life(self)
  File "H:\ICT\A level\Computing\Tower Defense Code\enemy.py", line 55, in     life
    import main.py
  File "H:\ICT\A level\Computing\Tower Defense Code\main.py", line 62, in     <module>
    createMenu()
  File "H:\ICT\A level\Computing\Tower Defense Code\main.py", line 9, in     createMenu
    newRound()
  File "H:\ICT\A level\Computing\Tower Defense Code\main.py", line 23, in     newRound
    cancelLoop()
  File "H:\ICT\A level\Computing\Tower Defense Code\main.py", line 38, in     cancelLoop
    startRound()
  File "H:\ICT\A level\Computing\Tower Defense Code\main.py", line 41, in    startRound
    import enemy.py
ImportError: No module named 'enemy.py'; 'enemy' is not a package

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-14 15:39:23

首先删除.py文件后缀。语法只是:

代码语言:javascript
复制
import enemy

这将运行enemy.py中的所有代码(假定enemy.py位于Python已知的路径中)。

如果您想重复这个过程,要使用的命令是:

代码语言:javascript
复制
reload(enemy)

不过,这并不是使用模块的好方法。最好是在敌人内部创建一个函数,并直接调用它:

代码语言:javascript
复制
import enemy
enemy.enemy()
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41145526

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档