小编Jak*_* M.的帖子

scala:产生两个循环的成对组合

我想创建一个包含元组的集合,其中包含两个列表的所有成对组合.就像是:

for ( x <- xs )
  for ( y <- ys ) 
    yield (x,y)
Run Code Online (Sandbox Code Playgroud)

在Python中这可行,在Scala中显然for仅为最后一个循环产生(所以这个计算结果Unit)

在Scala中实现它的最简洁方法是什么?

scala

16
推荐指数
2
解决办法
9921
查看次数

可以在指针中添加'const'来帮助优化吗?

我有一个指针int* p,并在循环中执行一些操作.我不修改内存,只是阅读.如果我添加const到指针(两种情况,const int* pint* const p),它可以帮助编译器优化代码吗?

我知道其他优点const,比如安全或自我记录,我会问这个特例.重新提出问题:可以const给编译器任何有用的(用于优化)信息吗?

c c++ optimization const

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

web.py - 指定地址和端口

如何在web.py中指定监听地址和端口?就像是:

web.application( urls, host="33.44.55.66", port=8080 )
Run Code Online (Sandbox Code Playgroud)

编辑

我想避免使用默认的web.py命令行解析

python web.py

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

Python:unescape"\ xXX"

我有一个字符串转义的数据

escaped_data = '\\x50\\x51'
print escaped_data # gives '\x50\x51'
Run Code Online (Sandbox Code Playgroud)

什么Python函数会覆盖它,所以我会得到

raw_data = unescape( escaped_data)
print raw_data # would print "PQ"
Run Code Online (Sandbox Code Playgroud)

python

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

python:函数的迭代器

从函数创建无限迭代器的惯用方法是什么?例如

from itertools import islice
import random
rand_characters = to_iterator( random.randint(0,256) )
print ' '.join( islice( rand_characters, 100))
Run Code Online (Sandbox Code Playgroud)

会产生100个随机数

python

12
推荐指数
2
解决办法
760
查看次数

如何按字符串长度过滤`sqlalchemy`?

如何sqlalchemy按字符串长度过滤?

此代码段:

sess.query(db.ArticlesTable).filter(or_(
    and_(db.ArticlesTable.shorttext.length > 0),
         ...
Run Code Online (Sandbox Code Playgroud)

给了我以下错误:

File "./aggregate_news.py", line 69, in is_acceptable
    db.ArticlesTable.shorttext.length > 0),
  File ".../sqlalchemy/orm/attributes.py", line 211, in __getattr__
    key)
AttributeError: Neither 'InstrumentedAttribute' object nor 'Comparator' 
    object associated with ArticlesTable.shorttext has an attribute 'length'
Run Code Online (Sandbox Code Playgroud)

在哪里ArticlesTable:

class ArticlesTable(Base):
    __tablename__ = TABLE_ARTICLES
    id = Column(Integer, primary_key=True)
    shorttext = Column(String)
    ...
Run Code Online (Sandbox Code Playgroud)

python sqlalchemy

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

对于具有N个线程的并行算法,性能增益是否大于N?

一个理论问题,也许很明显:

在以N个线程的并行方式实现后,算法的执行速度是否比原始的单线程算法快N倍?换句话说,增益是否可以更好地与线程数线性相关?

theory algorithm parallel-processing performance

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

没有mousemove()的mousedown()上的jQuery鼠标位置

我是否可以在mousedown(event)事件中获得光标位置,而不是mousemove(event)连续使用(从而减少资源)?event.pageX返回NaNmousedown

jquery

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

fifo - 循环阅读

我想使用os.mkfifo进行程序之间的简单通信.我在循环中读取fifo时遇到问题.

考虑这个玩具示例,我有一个读者和一个使用fifo的作家.我希望能够在循环中运行阅读器来读取进入fifo的所有内容.

# reader.py
import os
import atexit

FIFO = 'json.fifo'

@atexit.register
def cleanup():
    try:
        os.unlink(FIFO)
    except:
        pass

def main():
    os.mkfifo(FIFO)
    with open(FIFO) as fifo:
#        for line in fifo:              # closes after single reading
#        for line in fifo.readlines():  # closes after single reading
        while True:
            line = fifo.read()          # will return empty lines (non-blocking)
            print repr(line)

main()
Run Code Online (Sandbox Code Playgroud)

而作者:

# writer.py
import sys

FIFO = 'json.fifo'


def main():
    with open(FIFO, 'a') as fifo:
        fifo.write(sys.argv[1])

main()
Run Code Online (Sandbox Code Playgroud)

如果我python …

python mkfifo

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

bison/flex:打印错误的行

我正在使用bison + flex来解析文件.出错时调用yyerror().如何获取违反规则的行号或字符串,并使用错误消息进行打印?

c c++ bison flex-lexer

9
推荐指数
2
解决办法
8269
查看次数