小编Lyn*_*ite的帖子

将os.popen(命令)读入字符串

我不确定我的头衔是否合适.我正在做的是编写一个python脚本来自动化我的一些代码编写.所以我正在解析.h文件.但我想在开始之前扩展所有宏.所以我想调用shell来:

gcc -E myHeader.h
Run Code Online (Sandbox Code Playgroud)

哪个应该将myHeader.h的post preprocessed版本放到stdout中.现在我想直接将所有输出读入字符串以进行进一步处理.我已经读过我可以用popen做到这一点,但我从未使用过管道对象.

我该怎么做呢?

python string popen

15
推荐指数
3
解决办法
8万
查看次数

在嵌入式系统上使用动态数据接口有多糟糕?

因此,在嵌入式系统部门,我明年将参加大学,我们将了解到动态数据结构在嵌入式系统程序中是一件坏事.但讲义没有说明原因.

现在我正在开发一个中等规模的嵌入式系统LURC控制器,主要是利用AVR169MEGA的"Butterfly"演示板的外围设备.产生4个PWM信号来控制伺服和ESC.并提供9 seg液晶屏.

现在我想不出任何更好的存储指令的方法,因为它们是收到的小瓶USART序列,而不是队列.尤其是我需要等待收到未知数​​量的数据的东西:例如,要在LCD屏幕上显示的字符串.

那你为什么不在嵌入式系统的微控制器上使用动态数据结构呢?只是你在一个严重的内存限制环境中,并且必须确保你的mallocs成功吗?

queue stack avr list

14
推荐指数
3
解决办法
9668
查看次数

.NET Framework文档中的时间复杂度

我在哪里可以找到标准.Net库中方法的时间复杂度?

我使用MSDN,它偶尔提到时间复杂性,但不经常(我遇到类似的Java问题).

例如,我想知道是否Microsoft.FSharp.Collections.Set<'T>.MaximumElement 是O(1)(如果类明确总是跟踪最大元素,那将是这种情况.)或者如果它是O(lg n),(如果我们必须搜索它的地图).

这是一个具体的例子,但肯定会记录大O时间的复杂性.

.net c# big-o msdn time-complexity

14
推荐指数
0
解决办法
501
查看次数

我应该如何将单例数组转换为标量?

假设我有一个Array名为的变量p:

julia> p = [5]
julia> typeof(p)
Array{Int64,1}
Run Code Online (Sandbox Code Playgroud)

我应该如何将其转换为标量?p也可能是二维的:

julia> p = [1]'' 
julia> typeof(p)
Array{Int64,2}
Run Code Online (Sandbox Code Playgroud)

(注意:增加维度的双转置技巧可能在Julia的未来版本中不起作用)

通过适当的操作,我可以制作p任何尺寸,但我应该如何将其缩小为标量?


一种可行的方法是p=p[1],但如果p有多个元素,则不会抛出任何错误p; 所以,这对我没有好处.我可以构建自己的函数(带检查),

function scalar(x)
    assert(length(x) == 1)
    x[1]
end
Run Code Online (Sandbox Code Playgroud)

但它似乎必须重新发明轮子.

什么是行不通的squeeze,它只是剥离尺寸直到p是一个零维数组.

(与Julia相关:将1x1数组从内积转换为数字,但在这种情况下,与操作无关.)

arrays scalar julia

13
推荐指数
2
解决办法
2222
查看次数

如何并行化排序?

我想分类很多东西.

Julia的标准库排序是单线程的.如何利用我的多核机器更快地对事物进行排序?

sorting parallel-processing multithreading julia

13
推荐指数
1
解决办法
542
查看次数

创建一个包含> 255个元素的列表

好的,所以我正在编写一些python代码(我不会写python,我更习惯java和C).

无论如何,所以我需要存储整数文字的集合.(理想情况下,其中10,000个,目前我只有1000个)我本来希望通过文件IO访问文字,或访问源API,但这是不允许的.反正不是ontopic.

所以我将文字放入列表中:

    src=list(0,1,2,2,2,0,1,2,... ,2,1,2,1,1,0,2,1)
#some code that uses the src
Run Code Online (Sandbox Code Playgroud)

但是当我尝试运行该文件时,它会出现错误,因为有超过255个参数.所以构造函数就是问题所在.我该怎么做?

这些数据对我来说是一个空间分隔的文本文件.我只是搜索并替换并复制了它

python parameters list syntax-error literals

11
推荐指数
1
解决办法
1031
查看次数

在Seaborn中设置绘图背景颜色

我正在使用Seaborn在Pandas中绘制一些数据.

我正在制作一些非常大的地块factorplot.

为了看到它们,我在我的大学使用了一些可视化设施.我正在使用一个由4×4显示器组成的复合屏幕,小屏幕(但非零)斜面 - 屏幕之间的间隙.这个差距是黑色的.为了最大限度地减少屏幕之间的断开,我希望图形背景为黑色.我一直在挖掘文档和玩游戏,我无法解决它.当然这很简单.

我可以使用灰色背景 set_style('darkgrid')

我需要直接访问matplotlib中的情节吗?

python plot matplotlib pandas seaborn

11
推荐指数
3
解决办法
2万
查看次数

在语言层面,究竟是什么`ccall`?

我是朱莉娅的新手,我试图在语言层面理解它ccall是什么.在语法级别,它看起来像一个普通函数,但它在参数的显示方式上显然不同:

请注意,参数类型元组必须是文字元组,而不是元组值变量或表达式.

另外,如果我评估一个绑定到Julia REPL中的函数的变量,我会得到类似的东西

julia> max
max (generic function with 15 methods)
Run Code Online (Sandbox Code Playgroud)

但如果我尝试做同样的事情ccall:

julia> ccall
ERROR: syntax: invalid "ccall" syntax
Run Code Online (Sandbox Code Playgroud)

显然,这ccall是一种特殊的语法,但它也不是一个宏(没有@前缀,无效的宏使用会产生更具体的错误).那么,它是什么?它是用语言编写的东西,还是我可以用一些我不熟悉的语言构造来定义自己的东西?

如果它是一些烘焙的语法,为什么决定使用函数调用符号,而不是将其实现为宏或设计更可读和不同的语法?

syntax macros function ffi julia

11
推荐指数
1
解决办法
327
查看次数

Numpy Pure函数用于性能,缓存

我正在写一些适度的性能关键代码.此代码将位于最内部循环中,计算的运行时间以小时为单位.快速计算表明,在计算的某些变体中,此代码将执行大约10 ^ 12次.

因此,函数是计算sigmoid(X),另一个计算它的导数(gradient).Sigmoid具有以下属性:对于
y = sigmoid(x),dy/dx = y(1-y)
在python for numpy中,这看起来像:

sigmoid = vectorize(lambda(x): 1.0/(1.0+exp(-x)))
grad_sigmoid = vectorize(lambda (x): sigmoid(x)*(1-sigmoid(x)))
Run Code Online (Sandbox Code Playgroud)

可以看出,这两个函数都是纯粹的(没有副作用),因此它们是备忘的理想候选者,至少在短期内,我有一些担心缓存每次调用sigmoid所做的:存储10 ^ 12个浮点数将需要几TB的RAM.

有没有一种优化方法?
python会不会认为这些是纯函数并为我缓存它们?
我什么都不担心?

python optimization numpy memoization blas

10
推荐指数
2
解决办法
2万
查看次数

我何时应该使用`==`vs`===`vs`isequal`

我看到朱莉娅有3种不同的方式来实现平等。

=====isequal

我应该使用哪个,什么时候使用?

julia

10
推荐指数
2
解决办法
152
查看次数