小编Tah*_*gir的帖子

Mongodb Aggregation框架比map/reduce更快吗?

mongodb 2.2中引入的聚合框架是否比map/reduce有任何特殊的性能改进?

如果是,为什么,如何以及多少?

(我已经为自己做过测试了,性能几乎相同)

performance mapreduce mongodb aggregation-framework

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

在向会话添加对象时,SQLAlchemy是否保存顺序?

这种断言是否总是通过?换句话说,在向会话添加新对象时,SQLAlchemy是否保存顺序(在生成INSERT查询时)?

from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm.session import sessionmaker
from sqlalchemy.engine import create_engine
from sqlalchemy.types import Integer
from sqlalchemy.schema import Column

engine = create_engine('sqlite://')
Base = declarative_base(engine)
Session = sessionmaker(bind=engine)
session = Session()

class Entity(Base):
    __tablename__ = 'entity'
    id = Column(Integer(), primary_key=True)
Entity.__table__.create(checkfirst=True)


first = Entity()
session.add(first)

second = Entity()
session.add(second)

session.commit()
assert second.id > first.id
print(first.id, second.id)
Run Code Online (Sandbox Code Playgroud)

没有,在生产中我使用postgresql,sqlite用于测试.

python database orm sqlalchemy

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

如何在SQLAlchemy中使用READ ONLY事务模式?

在PostgreSQL中,事务访问模式可以更改为READ ONLY(docs).在SQLAlchemy中,可以为引擎更改隔离级别,但不为只读访问模式(docs)提供参数.

如何READ ONLY在连接上制作具有访问模式的引擎?

postgresql transactions sqlalchemy readonly

7
推荐指数
2
解决办法
4957
查看次数

lxml删除<head>中的空格和换行符

这个小程序:

from lxml.html import tostring, fromstring
e = fromstring('''
<html><head>
        <link href="/comments.css" rel="stylesheet" type="text/css">
        <link href="/index.css" rel="stylesheet" type="text/css">
    </head>
    <body>
        <span></span>
        <span></span>
    </body>
</html>''')

print (tostring(e, encoding=str)) #unicode on python 2
Run Code Online (Sandbox Code Playgroud)

将打印:

<html><head><link href="/comments.css" rel="stylesheet" type="text/css"><link
href="/index.css" rel="stylesheet" type="text/css"></head><body>
        <span></span>
        <span></span>
    </body></html>
Run Code Online (Sandbox Code Playgroud)

去掉了头部的空格和换行符.即使我们将两个<link>元素放在<body>中,也会发生这种情况.似乎删除了头元素之间的空白文本节点(\ s*).

我怎样才能在<link> s之间保留空格和换行符?(我希望输出与输入完全相同)

python lxml html-parsing python-3.x

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

使用javascript剥离标记并处理换行符

我想从html中删除标签,但保留它的换行符.

我想要的行为就像在浏览器中复制文本并将其粘贴到记事本中一样.

例如,转换的代码:

  • <div>x1</div><div>x2</div>x1\nx2
  • <p>x1</p><p>x2</p>x1\nx2
  • <b>x1</b><i>x2</i>x1x2
  • x1<br>x2x1\nx2

删除所有标签不起作用(/<.*?>/g).同时创建一个虚拟<div>并设置它innertHTML并读取它将textContent删除换行符.

任何帮助?

javascript sanitization strip-tags

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

龙卷风发生器引擎中的内存泄漏,当连接关闭时使用try/finally块

这个很棒的代码,显示龙卷风gen模块中的内存泄漏,当连接关闭而不读取响应时:

import gc
from tornado import web, ioloop, gen

class MainHandler(web.RequestHandler):
    @web.asynchronous
    @gen.engine
    def get(self):
        gc.collect()
        print len(gc.garbage)  # print zombie objects count
        self.a = '*' * 500000000  # ~500MB data
        CHUNK_COUNT = 100
        try:
            for i in xrange(CHUNK_COUNT):
                self.write('*' * 10000)  # write ~10KB of data
                yield gen.Task(self.flush)  # wait for reciever to recieve
            print 'finished'
        finally:
            print 'finally'

application = web.Application([
    (r"/", MainHandler),
    ])

application.listen(8888)
ioloop.IOLoop.instance().start()
Run Code Online (Sandbox Code Playgroud)

现在,多次运行一个简单的测试客户端

#!/usr/bin/python
import urllib
urlopen('http://127.0.0.1:8888/')  # exit without reading response …
Run Code Online (Sandbox Code Playgroud)

python memory-leaks generator tornado try-finally

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

对于④,python isdigit()为True,但int()失败

和④有什么区别?

>>> u''.isdigit()
True
>>> int(u'')
4
>>> u'?'.isdigit()
True
>> int(u'?')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '?'
Run Code Online (Sandbox Code Playgroud)

注意:上面是在python3上输出的.在python last上给出了这个异常:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeEncodeError: 'decimal' codec can't encode character u'\u2463' in position 0: invalid decimal Unicode string
Run Code Online (Sandbox Code Playgroud)

python unicode

5
推荐指数
0
解决办法
78
查看次数

是`document.referrer` url编码与否?

我写了一个小测试页面来抓取document.referrer用户使用javascript并将其发送到一个简单的日志服务器(如sendReferrer(document.referrer)).

Firefox发送的引荐来源始终是网址编码的,(例如,当引荐网址为www.google.com/search?q=Ü时,"http://www.google.com/search?q=%C3%9C")

但是一些客户端(如Win7上的IE9)在没有url-encoding的情况下发送网址(www.google.com/search?q=Ü)

document.referrer在所有浏览器中进行了网址编码吗?这是否可靠(任何标准的一部分)与否?

更新:在Firefox15/Chrome21(在ubuntu上)document.referrer是url编码的

javascript cross-browser url-encoding referrer

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

Firefox:刷新页面时,选定的单选按钮会自动更改

我有三个单选按钮,首先选中(带有checked ="checked").但是当我刷新页面时,所选输入会自动在第一个和第二个输入之间切换!

真奇怪!使用firebug,我可以看到只有第一个输入已经检查="已检查"属性,但在渲染页面中第二个被选中!

有什么意见吗?!

[注意:JQuery是在页面上加载的,但我认为它与jQuery无关)

firefox jquery radio-button

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

SQLAlchemy:使用IN运算符查询复合主键

假设一个表foo具有复合主键(a,b),如何使用SQLAlchemy(PostgreSQL方言)生成以下sql查询?

SELECT * FROM foo WHERE (a,b) IN ((1,2), (2,3));
Run Code Online (Sandbox Code Playgroud)

postgresql sqlalchemy compound-key

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