草庐IT

python - 你如何组织一个包含多个包的python项目,以便包中的每个文件仍然可以单独运行?

TL;博士这是一个示例存储库,按照第一个图表(下图)中的描述进行设置:https://github.com/Poddster/package_problems如果您可以在项目组织方面使它看起来像第二个图表并且仍然可以运行以下命令,那么您已经回答了这个问题:$gitclonehttps://github.com/Poddster/package_problems.git$cdpackage_problems$nosetests$./my_tool/my_tool.py$./my_tool/t.py$./my_tool/d.py(orfortheabovecommands,$cd./my_

Python:包中的 'Private' 模块

我有一个包mypack,其中包含模块mod_a和mod_b。我打算将包本身和mod_a自由导入:importmypackimportmypack.mod_a但是,我想保留mod_b以供mypack专用。那是因为它的存在只是为了组织后者的内部代码。我的第一个问题是,在Python编程中,拥有这样的“私有(private)”模块是一种公认​​的做法吗?如果是,我的第二个问题是,将这种意图传达给客户的最佳方式是什么?我是否在名称前加上下划线(即_mod_b)?还是声明一个子包private并将所有此类模块放在那里是个好主意? 最佳答案 我

python - 在模块和/或包中组织 Python 类

我喜欢每个文件有一个公共(public)类的Java约定,即使有时有充分的理由将多个公共(public)类放入一个文件中。就我而言,我有相同接口(interface)的替代实现。但是如果我将它们放在单独的文件中,我会在import语句中使用多余的名称(或误导性的模块名称):importsomeConverter.SomeConverter而someConverter是文件(和模块)名称,而SomeConverter是类名。这对我来说看起来很不雅。将所有替代类放在一个文件中会导致更有意义的导入语句:importconverters.SomeConverter但是我担心如果我将所有相关的类

python - 是否有一种标准方法可以列出包中 Python 模块的名称?

有没有一种不使用__all__直接列出包中所有模块名称的方法?例如,给定这个包:/testpkg/testpkg/__init__.py/testpkg/modulea.py/testpkg/moduleb.py我想知道是否有标准或内置的方式来做这样的事情:>>>package_contents("testpkg")['modulea','moduleb']手动方法是遍历模块搜索路径以找到包的目录。然后可以列出该目录中的所有文件,过滤掉唯一命名的py/pyc/pyo文件,去除扩展名,然后返回该列表。但这对于模块导入机制已经在内部做的事情来说似乎是相当多的工作。该功能是否暴露在任何地方?

java - 如果我不指定,我的类(class)放在哪个默认包中?

假设我有一个名为Main.java的文件,其中包含以下代码:publicclassMain{publicstaticvoidmain(String[]args){System.out.println("Helloworld");}}它是否放在一个特定的包中,在(也许?)一个未命名的包中? 最佳答案 不在指定包中的类在unnamedpackage中。因此完整的类名是Main。这样的类不能是used来自命名包,但通过反射除外。JLS说:UnnamedpackagesareprovidedbytheJavaSEplatformprinci

java - 在同一个包中找不到类

我正在尝试编译Board.java,它与Hexagon.java位于同一包(和目录)中,但我收到此错误:Board.java:12:cannotfindsymbolsymbol:classHexagonlocation:classoadams_atroche.BoardprivateHexagon[][]tiles;Board.java的前几行:packageoadams_atroche;importjava.util.LinkedList;importjava.util.Queue;importjava.io.PrintStream;importp323.hex.*;publiccl

java - 在 Eclipse 中方便地将一个类 move 到不同的包中,而不需要 svn

当将文件从old.packagemove到new.package时,我希望发生两件事:更新对该类的所有引用(在项目的所有文件中),以便使用新包svnmoveold/package/Foo.javanew/package/Foo.java我在EclipseGanymede中使用颠覆性的。当我只是将文件从一个包拖到另一个包时,所有引用都会更新,并且文件会在文件系统上move。但是SVN不知道这一点,因此svnmoveold/package/foo.javanew/package/Foo.java命令在old/package/Foo.java时不起作用(显然)不存在(因为eclipse已经m

java - JUnit4 使用测试套件运行特定包中的所有测试

这在JUnit4中可行吗?在JUnit3中,我会执行以下操作:publicclassMyTestSuite{publicstaticTestsuite()throwsException{doBeforeActions();try{TestSuitetestSuite=newTestSuite();for(Classclazz:getAllClassesInPackage("com.mypackage")){testSuite.addTestSuite(clazz);}returntestSuite;}finally{doAfterActions}}...}

java如何使用其他包中的类?

我可以导入,使用其他包中的类吗?在Eclipse中,我做了2个包一个是主要的,另一个是次要的main-main(class)second-second(class)andIwantedthemainfunctionofmainclasstocallthefunctionxinsecondclass.howcanIdoit?Itried:importsecond;second.x();(ifbothclassesareinthesamepackagethenitworks)second.second.x();但他们都没有工作。我现在想不通了。 最佳答案

java - 有没有办法在 Eclipse 中搜索包中的文本?

我通常用ctrl+H在Eclipse中搜索东西。不过,这只允许我根据文件扩展名搜索文本。Ctrl+F似乎只搜索当前文档。有没有办法在包中搜索文本? 最佳答案 在包资源管理器中单击包,然后按Ctrl-H并单击“选定资源” 关于java-有没有办法在Eclipse中搜索包中的文本?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/5023716/