小编Sky*_*and的帖子

Python:需要kwarg,哪个例外要加注?

确保使用特定kwarg调用方法的一种方法是:

def mymethod(self, *args, **kwargs):
    assert "required_field" in kwargs
Run Code Online (Sandbox Code Playgroud)

提升一个AssertionError似乎不是最合适的事情.是否有一个商定的内置异常来处理这个错误消息?

更多信息:存在第三方子类化问题,其中*args和**kwargs有点'需要传递,因此使"required_field"成为位置参数并不是一个好的选择.

python exception

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

获取jQuery元素集的data-foo属性列表

我可以用attr"获取匹配元素集中第一个元素的属性值......"

要获取属性列表,我是否需要手动构建它$(..).each或者是否方便?

$('tr.food-row')
[
<tr class=?"food-row" data-pk=?"11457">?…?</tr>?
, 
<tr class=?"food-row" data-pk=?"11429">?…?</tr>?
]
$('tr.food-row').attr('data-pk')
"11457"
Run Code Online (Sandbox Code Playgroud)

我想得到["11457", "11429"].

each jquery

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

Python statsmodels OLS和R的lm的区别

我不确定为什么我的简单OLS会得到略微不同的结果,这取决于我是否通过panda的实验性rpy接口进行回归,R或者我是否在Python中使用statsmodel.

import pandas
from rpy2.robjects import r

from functools import partial

loadcsv = partial(pandas.DataFrame.from_csv,
                  index_col="seqn", parse_dates=False)

demoq = loadcsv("csv/DEMO.csv")
rxq = loadcsv("csv/quest/RXQ_RX.csv")

num_rx = {}
for seqn, num in rxq.rxd295.iteritems():
    try:
        val = int(num)
    except ValueError:
        val = 0
    num_rx[seqn] = val

series = pandas.Series(num_rx, name="num_rx")
demoq = demoq.join(series)

import pandas.rpy.common as com
df = com.convert_to_r_dataframe(demoq)
r.assign("demoq", df)
r('lmout <- lm(demoq$num_rx ~ demoq$ridageyr)')  # run the regression
r('print(summary(lmout))')  # print from R
Run Code Online (Sandbox Code Playgroud)

从中R …

python r rpy2 pandas statsmodels

22
推荐指数
2
解决办法
6008
查看次数

Procfile可以有评论吗?

是否可以在Procfile中添加注释?如果是这样,语法是什么?

不确定这是否重要,但我在Heroku上主持.

heroku procfile

19
推荐指数
2
解决办法
4280
查看次数

Pymongo,查询列表字段,和/或

我有一些文件,如:

{
    _id: 5,
    vals: [100, 1100, 1500]
},
{
    _id: 10,
    vals: [1100, 1700]
}
Run Code Online (Sandbox Code Playgroud)

如何在vals字段中查询具有以下内容的文档:

  • 1100
  • 1700或100
  • 100和1100

我可以使用一些理解魔法:

g = lambda codes: (
    d for d in collection.find() if any(code in d["vals"] for code in codes)
)
g([100, 1700]).next()
Run Code Online (Sandbox Code Playgroud)

或者,对于AND:

g = lambda codes: (
    d for d in collection.find() if all(code in d["vals"] for code in codes)
)
g([100, 1100]).next()
Run Code Online (Sandbox Code Playgroud)

虽然如果有一些可以用驱动程序完成的魔法,这似乎有点笨拙.

python mongodb pymongo

18
推荐指数
1
解决办法
4万
查看次数

Rest api设计:使用重复数据创建POST,可能是IntegrityError/500,什么是正确的?

我有一个正常的,基本的REST api,如:

/
    GET - list
    POST - create

/<id>
    GET - detail
    PUT - replace
    PATCH - patch
    DELETE - delete
Run Code Online (Sandbox Code Playgroud)

当POST进来时/,我通常创建一个对象并创建一个新的id.某些(一个)字段必须是唯一的.因此,具有此类重复数据的POST可能会导致:

  1. 500 - IntegrityError
  2. 使它更像一个PUT/ PATCH/<id>和更新现有记录
  3. 捕获/避免错误并返回某种 4XX
  4. 还有别的我想不到的东西.

1似乎是:请求要么糟糕,要么我可以处理它.处理这种情况的正确方法是什么?

api rest api-design http

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

PyInstaller"ImportError:没有名为Pyinstaller的模块"

这是我运行python configure.py时生成的代码.

dan@Q430-Q530:~/pyinstaller-2.0/PyInstaller$ python configure.py
Traceback (most recent call last):
  File "configure.py", line 28, in <module>
    from PyInstaller import HOMEPATH, PLATFORM
ImportError: No module named PyInstaller
Run Code Online (Sandbox Code Playgroud)

所以,目前,我甚至无法运行PyInstaller,因为缺少一个名为... PyInstaller的模块.这是PyInstaller 2.0,您可以在这里这里分别找到/pyinstaller-2.0和/pyinstaller-2.0/PyInstaller目录内部的一些屏幕.

这里有人知道发生了什么吗?我尝试将/pyinstaller-2.0目录中的pyinstaller.py文件复制到/pyinstaller-2.0/PyInstaller目录中,但我没有运气.

这可能会成为一些荒谬的简单修复,但是......这让我很难过.如果需要更多信息,请询问,我会尝试提供.

python pyinstaller

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

使用boto,在s3上已存在的文件上设置content_type

我正在使用带有s3boto后端的django存储.根据这个问题,http://code.larlet.fr/django-storages/issue/5/s3botostorage-set-content-type-header-acl-fixed-use-http-and-disable-query-auth-by我有一堆文件(所有这些文件)都有内容类型'application/octet-stream'.鉴于我有一个实例<class 'boto.s3.key.Key'>,我该如何设置content_type?

In [29]: a.file.file.key.content_type
Out[29]: 'application/octet-stream'

In [30]: mimetypes.guess_type(a.file.file.key.name)[0]
Out[30]: 'image/jpeg'

In [31]: type(a.file.file.key)
Out[31]: <class 'boto.s3.key.Key'>
Run Code Online (Sandbox Code Playgroud)

python django amazon-s3 boto

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

Bazel:输出目录的规则

我刚刚开始与 Bazel 合作。所以,我提前道歉,我无法弄清楚这一点。

我正在尝试运行一个命令,该命令将一堆文件输出到一个目录,并使该目录可用于后续目标。我有两种不同的尝试:

  1. 使用规则
  2. 写我自己的规则

我天真地希望只用genrule. 但是,您似乎无法说“我不确切知道此命令将输出什么”并将目录放入outs. 现在我正在尝试编写一个可以使用的规则,ctx.actions.declare_directory但我还没有完全正确。我似乎无法摆脱tools我的工作区并进入我的规则。

我的 genrule 尝试看起来像这样:

genrule(
    name = "doit",
    srcs = [
        "doitConfigA",
        "doitConfigB",
    ],
    cmd = 'HOME=. ./$(location path/to/doit) install',

    # Neither of the below outs work - seems like bazel wants to know
    # exactly this list of files. I don't know the files that
    # will be output ahead of time.

    # This one looks at the `out_dir` that I already have …
Run Code Online (Sandbox Code Playgroud)

bazel skylark starlark

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

具有非ascii字符的字节字符串文字

显然,我可以在Python 2.7中做到这一点:

value = '??'
Run Code Online (Sandbox Code Playgroud)

似乎Python正在使用编码将字符串文字中的字符编码为字节字符串.什么是编码?这是sys.getdefaultencoding()源文件的编码,或其他什么定义的编码?

谢谢

python unicode encoding internationalization

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