从Angular.js更改日志:
...在此CL之后,ng-trim不再影响输入[type = password],并且永远不会修剪密码值.
这是来自其中一个提交消息,因此可能是补丁.它代表什么?改变日志?
我有以下代码
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) 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.LoopWhile和Control.Monad.forever- 我应该使用它们吗?(我仍然是Haskell的新手,还不了解monad.)
我正在阅读https://wiki.haskell.org/Do_notation_considered_harmful并惊讶于阅读以下内容
新手可能会认为陈述的顺序决定了执行的顺序.......陈述的顺序也不是评估顺序的标准.
维基文章给出了一些展示这个属性的例子.虽然这些例子很有意义,但我仍然不完全相信这个陈述是正确的,因为如果我写的是这样的话
main = do
putStrLn "foo"
putStrLn "bar"
putStrLn "baz"
Run Code Online (Sandbox Code Playgroud)
这三行按照陈述的顺序排列.那到底是怎么回事?
我能否始终相信,当我划分两个精确代表整数的IEEE 754双精度数时,我会得到确切的值?
例如:
80.0/4.0
=> 20.0
Run Code Online (Sandbox Code Playgroud)
结果是完全正确的20.0.
是否存在一些结果不准确的潜在价值19.99999999?
以下代码在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.84500002861和14.9698560237884523.4(当然在我的机器上).这是因为Python 3.x删除了对小int的特殊处理并处理类似于long2.x的所有整数
有没有办法在Python 3.x中获得类似(或更好)的整数运算性能?是否有int类似2.x中的类型?
此外,我不明白为什么这个改变,它会伤害性能,我没有看到太多的好处.
haskell ×2
python ×2
angularjs ×1
division ×1
do-notation ×1
math ×1
monads ×1
precision ×1
python-2.7 ×1
python-3.x ×1
terminology ×1