我一直在重新组织我的项目,因为某个地方有一个问题,但是,正如编程一样,问题现在变得更加严重了10倍,而且一切都坏了。
我当前满意的文件树是:
one.long = list(c("AAA", .8), c(NA, NA), c(NA, NA))
我的问题是在j <- list(data.frame(one.short = .6, one.long = .8), data.frame(one.short = NA,
one.long = NA), data.frame(one.short = .4, one.long = NA))
names(j) <- c("AAA", "BBB", "CCC")
# I tried this without success:
one.short = sapply(1:length(j), function(i) j[[i]]$one.short)
one.long = sapply(1:length(j), function(i) j[[i]]$one.long)
(在Amazons AI
- .git
- Game_Code
- __pycache__
- game.py
- lib
- __pycache__
- __init__.py (empty)
- motion.py
- pieceManagement.py
- tests
- __pychache__
- test_game.py
- README.md
文件夹中,我需要导入game.py
和Game_Code
(都在motion.py
目录中)。
我尝试了多种方法来上一级目录,导入lib,然后从中导入所有内容,主要使用了Import a file from a subdirectory?中的建议,但没有任何效果。作为参考,我使用的是Python 3.7.3。
答案 0 :(得分:0)
我不是专家,但是上周末我写了一些具有类似结构的python代码,并从folder.file导入参考中使用它来反映文件夹结构:
from lib.motion import classObject as ObjectName
from lib.pieceManagement import classMethod() as MethodName()
答案 1 :(得分:0)
要访问当前文件的父目录中的libs
,可以执行以下操作:
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + "/libs")
它将父指令+ /libs
添加到sys路径中,如Python - what is the libs subfolder for?中所述,python会在该路径中寻找它。但是,我不喜欢这种解决方案,因为它会导致这样的丑陋代码:
import os
import sys
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))) + "/libs")
from pieceManagement import piece
import motion
所以我仍然想找到一种Python的方式来做到这一点,也许与import语句内联。但是我知道这可行(在我的机器上)。