Questions tagged «package»

包广义上涉及两件事:1)构建/编译的软件的可用单元/组件,或2)全局命名空间(java)的分区。

3
Python:从项目层次结构中同一级别的另一个目录导入模块
我已经看到了各种各样的示例和其他类似的问题,但是似乎找不到与我的方案完全匹配的示例。我觉得这很愚蠢,因为有很多类似的问题,但是我似乎无法“正确”地解决这个问题。这是我的项目: user_management (package) | |------- __init__.py | |------- Modules/ | | | |----- __init__.py | |----- LDAPManager.py | |----- PasswordManager.py | |------- Scripts/ | | | |----- __init__.py | |----- CreateUser.py | |----- FindUser.py 如果我将“ CreateUser.py”移动到主user_management目录中,则可以轻松使用:"import Modules.LDAPManager"导入LDAPManager.py ---这可行。我不能做的(我想做的)是将CreateUser.py保留在Scripts子文件夹中,然后导入LDAPManager.py。我希望通过使用来完成此操作"import user_management.Modules.LDAPManager.py"。这行不通。简而言之,我可以使Python文件轻松地在层次结构中更深层次地查找,但是我无法获得Python脚本来引用一个目录,然后又引用另一个目录。 请注意,我可以使用以下方法解决问题: sys.path.append(os.path.join(os.path.dirname(__file__), '..')) import Modules.LDAPManager as LDAPManager 我听说这是不好的做法,并且不鼓励这样做。 脚本中的文件旨在直接执行(脚本中的init .py甚至有必要吗?)。我已经读过这种情况,我应该使用-m标志执行CreateUser.py。我对此进行了一些尝试,但似乎无法使CreateUser.py识别LDAPManager.py。

13
Eclipse:声明的软件包与预期的软件包不匹配
我在导入外部项目时遇到问题。我转到文件->导入...->现有项目到工作区,选择项目所在的文件夹,所有内容都导入了-但是项目的软件包名称似乎不是Eclipse期望的。软件包名称均带有前缀: prefix.packagename1 prefix.packagename2 等等 但是Eclipse期望 src.prefix1.prefix.packagename1 src.prefix1.prefix.packagename2 等等,因为目录是src / prefix1 / prefix / package1 我真的不想弄乱外部代码。如何告诉Eclipse忽略目录“ src / prefix1”?或者我还能做什么?
86 java  eclipse  package 

4
Python中的模块和库之间有什么区别?
我具有Java的背景知识,并且是Python的新手。在继续之前,我想确保我正确理解Python术语。 我对模块的理解是:一个可以被许多脚本导入的脚本,使阅读更加容易。就像在Java中一样,您有一个类,并且该类可以被许多其他类导入。 我对一个库的理解是:一个库包含许多模块,这些模块按其用途分开。 我的问题是:库是否像软件包,您有一个名为的软件包food,然后: Chocolate.py sweets.py biscuts.py food包装中是否包含? 还是图书馆使用软件包,所以如果我们有另一个软件包drink: 牛奶 juice.py 包含在包装中。在library包含两个包? 此外,应用程序编程接口(API)通常包含一组库,这是层次结构顶部的库: API 图书馆 包 模组 脚本 因此,API将由2-5构成吗?
86 python  module  package 

3
将代码添加到__init__.py
我正在研究django中的模型系统如何工作,我注意到一些我不理解的东西。 我知道您创建了一个空__init__.py文件来指定当前目录是一个包。并且您可以在其中设置一些变量,__init__.py以便import *正常工作。 但是django添加了一堆from ... import ...语句,并在中定义了一堆类__init__.py。为什么?这不只是使事情看起来凌乱吗?是否有需要此代码的原因__init__.py?

3
Python模块的绝对和显式相对导入
我想知道在Python应用程序中导入包的首选方法。我有一个这样的包结构: project.app1.models project.app1.views project.app2.models project.app1.views进口project.app1.models和project.app2.models。我想到有两种方法可以做到这一点。 绝对进口: import A.A import A.B.B 或具有明确的相对导入,如在Python 2.5中使用PEP 328引入的: # explicit relative from .. import A from . import B 什么是最pythonic的方式做到这一点?

9
如何npm发布特定文件夹但作为包根目录
我有一个项目,其中包含一个gulp任务,用于构建和打包源并将其发布在名为的目录中dist。我的目标是将其发布为npm软件包,但仅发布dist文件夹。在NPM文件说,我可以使用files标签来指定文件导出。有用。但是,文档还说: 如果您在阵列中命名一个文件夹,那么它还将包括该文件夹中的文件 结果是一个npm包,其node_modules如下所示: 但我想在软件包的根目录(没有该dist文件夹)中查看我的所有文件。我的index.js文件在dist文件夹中,但应位于根目录。我尝试将标签设置files为,/dist/**/*但没有成功。 我该如何实现?


5
如何将静态文件包含到setuptools-python包
我想包含./static/data.txtto setuptools,这是我的代码: # setup.py import os,glob from setuptools import setup,find_packages setup( name = "PotatoProject", version = "0.1.1", author = "Master Splinter", author_email = "splinter@initech.com", description = ("The potatoproject!"), url = 'http://www.google.com', license = "BSD", # adding packages packages=find_packages('src'), package_dir = {'':'src'}, # trying to add files... include_package_data = True, package_data …


4
如何在Java中获取当前的类名,包括包名?
我正在研究一个项目,一个要求是,如果main方法的第二个参数以“ /”开头(对于linux),则应将其视为绝对路径(不是问题),但如果它不是以“”开头/”,则它应获取该类的当前工作路径,并将其附加给定的参数。 我可以通过几种方式获取类名:System.getProperty("java.class.path"),new File(".")和getCanonicalPath(),等等。 问题是,这仅给我提供了存储软件包的目录-即,如果我在“ .../project/this/is/package/name”中存储了一个类,则只会给我“ /project/”,而忽略了实际.class files存在的软件包名称。 有什么建议么? 编辑:这是从练习说明中得到的解释 sourcedir可以是绝对的(以“ /”开头),也可以是相对于我们从中运行程序的位置 sourcedir是main方法的给定参数。我如何找到那条路?


3
nodejs中的`rc`文件是什么?
我有一个关于不同的一些问题rc的文件在一个典型的节点应用,如.npmrc,.babelrc等。 什么是rc文件,我知道它是模块的runtime-config,但还有其他什么? rc文件是否必须遵循.[module]rc命名约定,还是只是推荐的格式? 支持哪些格式?我看过yaml和json格式,这取决于模块使用的读者吗? 如何从模块的角度访问rc文件?是否将其命名为[module]rc可以自动供模块使用?如果可以,它将在哪里提供? 还是模块应该像使用该模块的应用程序中的任何其他文件一样访问文件,并期望它采用可理解的格式?(这是我现在正在做的,采用json格式) 我也看到有人要求package.json加载配置。推荐哪个,package.json还是一个rc文件? 另外它是如何从一个JavaScript文件不同,好像gulpfile.js用module.exports?(我的意思是建议,我当然知道js和rc文件的区别和优点) 每次我在google中搜索时,我都会在这里和这里结束,这是一个读取rc文件的工具,但没有说明它们是什么,或者它们是如何构造和/或连接到模块的。 任何见解都是非常有用的。谢谢

4
entry_points / console_scripts和setup.py中的脚本之间的区别?
基本上有两种方法可以通过setup.py以下方式将Python控制台脚本安装到我的路径: setup( ... entry_points = { 'console_scripts': [ 'foo = package.module:func', ], } ) 和 setup( ... scripts = [ 'scripts/myscript.sh' ] ) 有什么区别?我看到第一种方法允许我为脚本选择漂亮的特定名称,但是还有其他区别吗?不同的原始用途,兼容性(setuptools,distutils,...?),用法,...?我很困惑,精心准备的详细答复可以帮助我(可能还有其他人)正确理解所有这一切。 更新:自从我问了问题PyPA就此主题发布了这些很酷的文档。


7
是否显示有关未安装的RPM软件包的信息?
我为此搜索了一下,但是找不到如何查询未安装的RPM文件的信息: # rpm -qa blackfin-jtag-tools-09r1.1-2.i386.rpm # # rpm -qi blackfin-jtag-tools-09r1.1-2.i386.rpm package blackfin-jtag-tools-09r1.1-2.i386.rpm is not installed # # rpm -q blackfin-jtag-tools-09r1.1-2.i386.rpm package blackfin-jtag-tools-09r1.1-2.i386.rpm is not installed # # rpm --info blackfin-jtag-tools-09r1.1-2.i386.rpm RPM version 4.8.0 Copyright (C) 1998-2002 - Red Hat, Inc. This program may be freely redistributed under the terms of …
77 package  rpm 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.