情况是这样的:我有一个Python库,用于使用自定义协议与其他一些硬件进行通信。无论谁使用此解决方案,都需要C代码库来实现通信的另一端。
我认为一种简单的方法是将文件放在Python包中,并提供将文件复制到所选目录的命令。文件捆绑正确,但我无法确定如何访问它们。我希望这很容易:
# 'pkgname' is a placeholder for package in site-packages.
shutil.copy('pkgname' + os.sep + 'filename', os.getcwd())
但后来我得到了:
FileNotFoundError: [Errno 2] No such file or directory: 'pkgname\\filename'
有关如何解决复制问题的任何建议?还是问题本身?
答案 0 :(得分:0)
找到了一个有效的解决方案,我要找的主要是第一行:
pkgdir = sys.modules['<mypkg>'].__path__[0]
fullpath = os.path.join(pkgdir, <myfile>)
shutil.copy(fullpath, os.getcwd())
也没有导入相关模块的愚蠢错误;猜猜明显的错误是最难发现的。