小编XrX*_*rXr的帖子

"CL"在提交消息中的含义是什么?它代表什么?

从Angular.js更改日志:

...在此CL之后,ng-trim不再影响输入[type = password],并且永远不会修剪密码值.

这是来自其中一个提交消息,因此可能是补丁.它代表什么?改变日志?

terminology angularjs

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

多处理在交互模式下中断

我有以下代码

from multiprocessing import Process, Queue
from queue import Empty
from time import sleep

def f(q):
    n = 100000000
    while n != 100000000 // 2:
        n -= 1
    q.put("the awkening!")
    print("my work here is done")

def main():
    q = Queue()
    p = Process(target=f, args=(q,))
    p.start()
    while True:
        try:
            print(q.get(block=False))
            raise systemexit
        except Empty:
            print("i found nothing :(")
            sleep(2)
    p.join()
Run Code Online (Sandbox Code Playgroud)

如果我加

if __name__ == '__main__':
     main()
Run Code Online (Sandbox Code Playgroud)

到最后然后用python script_name.py它来运行它,一切正常.但是,如果我只是运行scirpt python -i script_name.py然后运行main()Python抱怨:

Traceback (most recent call last): …
Run Code Online (Sandbox Code Playgroud)

python multiprocessing

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

创建循环的好方法

Haskell没有像许多其他语言一样的循环.我理解它背后的原因以及用于解决没有它们的问题的一些不同方法.但是,当需要循环结构时,我不确定我创建循环的方式是否正确/良好.

例如(平凡的功能):

dumdum = do
         putStrLn "Enter something"
         num <- getLine
         putStrLn $ "You entered: " ++ num
         dumdum
Run Code Online (Sandbox Code Playgroud)

这工作正常,但代码中是否存在潜在问题?

一个不同的例子:

a = do 
    putStrLn "1"
    putStrLn "2"
    a
Run Code Online (Sandbox Code Playgroud)

如果用像Python这样的命令式语言实现,它看起来像:

def a():
     print ("1")
     print ("2")
     a()
Run Code Online (Sandbox Code Playgroud)

这最终导致最大递归深度误差.在Haskell中似乎并非如此,但我不确定它是否会导致潜在的问题.

我知道还有其他选项来创建循环,例如Control.Monad.LoopWhileControl.Monad.forever- 我应该使用它们吗?(我仍然是Haskell的新手,还不了解monad.)

haskell

4
推荐指数
2
解决办法
276
查看次数

在do块中执行的顺序是否真的不依赖于语句顺序?

我正在阅读https://wiki.haskell.org/Do_notation_considered_harmful并惊讶于阅读以下内容

新手可能会认为陈述的顺序决定了执行的顺序.......陈述的顺序也不是评估顺序的标准.

维基文章给出了一些展示这个属性的例子.虽然这些例子很有意义,但我仍然不完全相信这个陈述是正确的,因为如果我写的是这样的话

main = do
  putStrLn "foo"
  putStrLn "bar"
  putStrLn "baz"
Run Code Online (Sandbox Code Playgroud)

这三行按照陈述的顺序排列.那到底是怎么回事?

monads haskell do-notation

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

当两个操作数是整数并且均分时,浮点除法总是准确的吗?

我能否始终相信,当我划分两个精确代表整数的IEEE 754双精度数时,我会得到确切的值?

例如:

80.0/4.0
=> 20.0
Run Code Online (Sandbox Code Playgroud)

结果是完全正确的20.0.

是否存在一些结果不准确的潜在价值19.99999999

math floating-point precision division

0
推荐指数
2
解决办法
74
查看次数

在Python 3.x中获取Python 2.x整数性能

以下代码在Python 2.x中比在Python 3.x中表现更好

from time import time
n = 100000000
s = time()
while n > 0:
    n -= 1
print (time() - s)
Run Code Online (Sandbox Code Playgroud)

在2.7,它产生7.8450000286114.9698560237884523.4(当然在我的机器上).这是因为Python 3.x删除了对小int的特殊处理并处理类似于long2.x的所有整数

有没有办法在Python 3.x中获得类似(或更好)的整数运算性能?是否有int类似2.x中的类型?

此外,我不明白为什么这个改变,它会伤害性能,我没有看到太多的好处.

python python-2.7 python-3.x

-1
推荐指数
1
解决办法
222
查看次数