小编Jul*_*ian的帖子

如果从源目录导入,则捕获python'ImportError'

当一个foo人在源目录中尝试导入模块时,会得到一个相当混乱的ImportError消息:ImportError: No module named foo.

如何轻松捕获此案例并返回更多信息,例如"请不要从源目录加载模块foo"?

有了__init__.py,我会开始:

try:
    from _foo import *
except ImportError:
    ## check whether in the source directory...
Run Code Online (Sandbox Code Playgroud)

所以我想区分a的不同原因ImportError(例如,因为一个名为的模块foo根本没有安装),并检测它setup.py位于当前目录中的情况.这样做的优雅方式是什么?

python exception-handling importerror

23
推荐指数
1
解决办法
5万
查看次数

确定特定包的版本

如何获取特定包的版本号?

显而易见的方法是获取所有已安装软件包的字典,然后筛选出感兴趣的软件包:

pkgs = Pkg.installed();
pkgs["Datetime"]
Run Code Online (Sandbox Code Playgroud)

获取所有已安装软件包的列表非常慢,特别是如果有很多软件包.

julia

13
推荐指数
3
解决办法
5248
查看次数

Julia中加载/导入的包列表

如何获取Julia会话的导入/使用包列表?

Pkg.status()列出所有已安装的包.我对通过using ...或导入/加载的那些感兴趣import ...

它似乎whos()包含相关信息(名称和是否是模块).输出whos()可以在变量中捕获吗?

julia reproducible-research

10
推荐指数
4
解决办法
932
查看次数

在朱莉娅中取回RNG种子

在朱莉亚,可以设置全球RNG的种子

srand(SEED)
Run Code Online (Sandbox Code Playgroud)

如何检索全局RNG的种子或当前状态,例如稍后再次检索?

目标是在任何给定的时间点获得RNG的状态,并在不同的会话中重新创建它,而不知道同时发生的初始种子或对RNG的所有调用.

例如,R允许访问当前种子

.Random.seed
Run Code Online (Sandbox Code Playgroud)

我希望朱莉娅能有同样的方式.

random julia

8
推荐指数
2
解决办法
1173
查看次数

Julia:具有替换的 n 个元素的唯一集合

给定一个向量v = [1,..,n],我尝试计算所有唯一的 n 元素集并在 julia 中进行替换。

由于我想对较大的 n 值执行此操作,因此我正在寻找一种有效的解决方案,可能使用迭代器。

例如,让我们考虑v = [1, 2, 3]:这应该导致[1,1,1], [1,1,2], [1,1,3], [1,2,2], [1,2,3], [1,3,3], [2,2,2], [2,2,3], [2,3,3], [3,3,3]. 对于唯一,我的意思是如果[1,1,2]是一个解决方案,那么它的任何排列[1,2,1], [2,1,1]都不是。

我当前的解决方案基于partitions函数,但不允许我限制元素 [1,..,n] 的计算

for i in n:n^2
  for j in partitions(i, n)
    ## ignore sets which exceed the range [1,n]
    if maximum(j) <= n
      ## accept as solution
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

combinatorics julia

3
推荐指数
1
解决办法
3040
查看次数