小编acu*_*ich的帖子

如何忽略Python中的弃用警告

我一直这样:

DeprecationWarning: integer argument expected, got float
Run Code Online (Sandbox Code Playgroud)

如何让这条消息消失?有没有办法避免Python中的警告?

python warnings ignore deprecated

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

避免嵌套try catch块的模式?

考虑一种情况,我有三种(或更多)方法执行计算,每种方法都可能因异常而失败.为了尝试每次计算,直到我们找到一个成功,我一直在做以下事情:

double val;

try { val = calc1(); }
catch (Calc1Exception e1)
{ 
    try { val = calc2(); }
    catch (Calc2Exception e2)
    {
        try { val = calc3(); }
        catch (Calc3Exception e3)
        {
            throw new NoCalcsWorkedException();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

是否有任何可接受的模式以更好的方式实现这一目标?当然,我可以将每个计算包装在一个辅助方法中,该方法在失败时返回null,然后只使用??运算符,但是有一种方法可以更普遍地执行此操作(即,无需为我想要使用的每个方法编写辅助方法)?我已经考虑过使用泛型编写一个静态方法,它在try/catch中包装任何给定的方法,并在失败时返回null,但我不确定如何解决这个问题.有任何想法吗?

c# monads design-patterns try-catch

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

同构函数的重要性

简短问题:同构函数在编程中的重要性是什么(即在函数式编程中)?

很长的问题:我试图根据我不时听到的一些术语,在类别理论中绘制函数式编程和概念之间的一些类比.从本质上讲,我正在尝试将该术语"解包"成具体的东西然后我可以扩展.然后,我将能够使用该术语,理解我正在谈论的那些 - 我正在谈论什么.这总是很好.

我一直听到的这些术语之一是同构,我收集的是关于函数或函数组合之间等价的推理.我想知道是否有人可以提供一些常见模式的一些见解,其中同构的属性派上用场(在函数式编程中),以及获得的任何副产品,例如从同构函数推理的编译器优化.

functional-programming isomorphism

72
推荐指数
3
解决办法
9704
查看次数

Python Math - TypeError:'NoneType'对象不可订阅

我正在为数学创建一个小程序(没有特别的原因,只是想要)并且我遇到了错误"TypeError:'NoneType'对象不可订阅.

我以前从未见过这个错误,所以我不知道这意味着什么.

import math

print("The format you should consider:")
print str("value 1a")+str(" + ")+str("value 2")+str(" = ")+str("value 3a ")+str("value 4")+str("\n")

print("Do not include the letters in the input, it automatically adds them")

v1 = input("Value 1: ")
v2 = input("Value 2: ")
v3 = input("Value 3: ")
v4 = input("Value 4: ")

lista = [v1, v3]
lista = list.sort(lista)

a = lista[1] - lista[0]

list = [v2, v4]
list = list.sort(list)

b = list[1] = list[0]

print str(a)+str("a")+str(" = ")+str(b) …
Run Code Online (Sandbox Code Playgroud)

python sorting math in-place

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

如何在IPython中安装Python包?

我想知道是否可以在不离开IPython shell的情况下安装python包.

python install module ipython

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

Emacs,切换到另一个框架(Mac OS X)

我可以用"Cx o"在窗口之间切换,但是如果我打开了多个帧,我可以在没有鼠标的情况下在它们之间移动吗?

我刚刚意识到这个问题可能听起来没有这个细节的脑风:我在Mac OS X(芬兰语键盘)上并且在同一个应用程序的窗口之间切换很困难.

macos emacs

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

更快到os.walk还是glob?

我在大型硬盘上乱码python中的文件查找.我一直在看os.walk和glob.我经常使用os.walk,因为我发现它更整洁,似乎更快(对于通常的大小目录).

有没有人对他们有任何经验,可以说哪个更有效率?正如我所说,glob似乎更慢,但你可以使用通配符等,就像walk一样,你必须过滤结果.以下是查找核心转储的示例.

core = re.compile(r"core\.\d*")
for root, dirs, files in os.walk("/path/to/dir/")
    for file in files:
        if core.search(file):
            path = os.path.join(root,file)
            print "Deleting: " + path
            os.remove(path)
Run Code Online (Sandbox Code Playgroud)

要么

for file in iglob("/path/to/dir/core.*")
    print "Deleting: " + file
    os.remove(file)
Run Code Online (Sandbox Code Playgroud)

python glob traversal os.walk directory-walk

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

我可以忽略gcc警告:'Foo :: m_bar'应该在成员初始化列表中初始化[-Weffc ++]

struct Bar
{
    Bar() {}
};


struct Foo
{
    Foo() = default;
    Bar m_bar;
};

int main()
{
    Foo foo;
}
Run Code Online (Sandbox Code Playgroud)

使用C++ 11 default关键字和gcc警告时-Weffc++,gcc输出:

警告:'Foo :: m_bar'应该在成员初始化列表中初始化[-Weffc ++]

忽略这个警告是否安全?我应该向gcc提交错误吗?

c++ gcc warnings compilation c++11

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

在PyOpenSSL中验证客户端证书

我正在编写一个需要在客户端浏览器中安装证书的应用程序.我在PyOpenSSL文档中找到了这个"Context"对象,但是我看不出回调应该如何验证证书,只是它应该以某种方式.

   set_verify(mode, callback)
      Set the verification flags for this Context object to mode and
      specify that callback should be used for verification callbacks.
      mode should be one of VERIFY_NONE and VERIFY_PEER. If
      VERIFY_PEER is used, mode can be OR:ed with
      VERIFY_FAIL_IF_NO_PEER_CERT and VERIFY_CLIENT_ONCE to further
      control the behaviour. callback should take five arguments: A
      Connection object, an X509 object, and three integer variables,
      which are in turn potential error number, error depth and return
      code. callback should return true if …

python validation ssl pyopenssl client-certificates

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

在金字塔中调用另一个视图

我的目标:在金字塔中,调用另一个视图可调用,并在Response不知道有关该视图可调用的任何细节的情况下获取对象.

在我的Pyramid应用程序中,假设我有一个使用view_config装饰器定义的视图"foo":

@view_config(route_name="foo",
             renderer="foo.jinja2")
def foo_view(request):
    return {"whereami" : "foo!"}
Run Code Online (Sandbox Code Playgroud)

现在说我想将"bar"路由到暂时执行相同操作的视图,因此它在内部调用foo_view并返回其响应:

@view_config(route_name="bar")
def bar_view(request):
   return foo_view(request)
Run Code Online (Sandbox Code Playgroud)

...可是等等!这不起作用,因为foo_view它不会返回Response它的渲染器.

所以,这将工作:

@view_config(route_name="bar",
             renderer="foo.jinja2")
def bar_view(request):
    return foo_view(request)
Run Code Online (Sandbox Code Playgroud)

因为它将应用相同的渲染器foo_view.但这很糟糕,因为我现在必须通过复制渲染器值并且必须知道被调用视图的渲染器来重复自己.

所以,我希望Pyramid中有一些函数允许调用另一个view-callable并在Response不知道或关心渲染对象的情况下获取一个对象:

@view_config(route_name="bar")
def bar_view(request):
    response = some_function_that_renders_a_view_callable(foo_view, request)
    return response
Run Code Online (Sandbox Code Playgroud)

some_function_that_renders_a_view_callable是什么?

pyramid.views.render_view似乎按名称搜索视图; 我不想透露姓名.

(注意:返回HTTPFound导致客户端重定向到目标路由是我试图避免的.我想"内部"重定向).

python view pyramid

14
推荐指数
3
解决办法
6581
查看次数