【发布时间】:2018-01-27 17:03:50
【问题描述】:
我正在制作掷骰子程序,但遇到了问题。我的程序中有 2 个文件夹:“骰子卷”和“骰子”。骰子卷里面有骰子。 dice roll 还有一个名为 dice roll.py 的 python 文件:
from random import randint
exec(open("./dice/DiceCrop.py").read(), globals())
print(randint(1,6))
dice 文件夹中有一个名为 DiceCrop.py 的 python 文件:
from PIL import Image
dice = Image.open("dice.png")
dice1 = dice.crop((0, 50, 65, 150))
dice1.save("one.png")
dice2 = dice.crop((64, 50, 131, 150))
dice2.save("two.png")
dice3 = dice.crop((130, 50, 196, 150))
dice3.save("three.png")
dice4 = dice.crop((196, 50, 262, 150))
dice4.save("four.png")
dice5 = dice.crop((262, 50, 328, 150))
dice5.save("five.png")
dice6 = dice.crop((328, 50, 394, 150))
dice6.save("six.png")
骰子文件夹还有一个图像文件“dice.png”。但是,当我运行 dice roll.py 时,它说没有像“dice.png”这样的文件。我知道为什么会发生这种情况,但我不知道如何解决它。发生这种情况是因为它在骰子卷文件夹而不是骰子文件夹中打开。如何让它在骰子文件夹而不是骰子文件夹中打开?这是错误消息:
【问题讨论】:
-
当您从 dice roll.py 文件中的 DiceCrop.py 文件执行代码时,它使用 DiceCrop.py 中的文件路径。但由于 dice roll.py 与 png 文件在不同的文件夹中执行,因此无法找到它们。你应该把所有东西都放在同一个文件夹中,或者在 python 中查看
import来处理相对导入,比如这个。 -
你到底为什么要
exec(open("./dice/DiceCrop.py").read()...???如果你真的需要使用那个文件,import它。
标签: python windows random python-3.5 dice