小编oro*_*ome的帖子

如何将重复应用函数累积到值列表中?

如何将函数的连续应用累积到Haskell中的值列表?

我不确定我是否正确,但我正在寻找的是,我有一个类型的列表值X,

l = [a, b, c, d, e]
Run Code Online (Sandbox Code Playgroud)

和一个功能

f :: X -> X -> X
Run Code Online (Sandbox Code Playgroud)

而且我要

(f e (f d (f c (f b a))))
Run Code Online (Sandbox Code Playgroud)

我想也许可以用$某种方式来表达.

我看到Haskell有一些fold功能,但我无法弄清楚如何让它像我熟悉折叠操作一样工作.

haskell list

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

如何验证Haskell"公共安全"构造函数的参数?

在我的Python包中,我有一个函数,我用它来创建我的类的验证实例,类似于

@staticmethod
def config_enigma(rotor_names, window_letters, plugs, rings):

    comps = (rotor_names + '-' + plugs).split('-')[::-1]
    winds = [num_A0(c) for c in 'A' + window_letters + 'A'][::-1]
    rngs = [int(x) for x in ('01.' + rings + '.01').split('.')][::-1]

    assert all(name in rotors for name in comps[1:-1])
    assert comps[-1] in reflectors
    assert len(rngs) == len(winds) == len(comps)
    assert all(1 <= rng <= 26 for rng in rngs)
    assert all(chr_A0(wind) in LETTERS for wind in winds)

    #...
Run Code Online (Sandbox Code Playgroud)

我想在Haskell中强制执行相同的行为.但是以相同的方式执行此操作 - 使用断言 - 不起作用,因为Haskell断言通常被禁用( …

validation haskell assertions python-2.7

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

如何使用 Sphinx 记录特定部分中的成员?

我正在努力弄清楚如何将 Python 类的特定成员的文档放置在 Sphinx 文档的特定部分中,理想情况下,同时在另一个部分中自动记录其余部分。

我有一个Python课程

class MyClass(object):

    def funky(self, arg):
        """Some docs."""
        ...
Run Code Online (Sandbox Code Playgroud)

定义my/module.py其中按预期工作,我可以使用以下方式记录而不会出现问题

***************************
MyModule - :mod:`my.module`
***************************

.. automodule:: my.module

.. autoclass:: MyClass
   :members:
   :undoc-members:
   :show-inheritance:
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试更好地控制文档的组织时,我无法让事情正常进行。具体来说,我希望将一些成员记录在明确的部分中(此处仅显示一个成员,但会有多个),其余成员自动记录为一组。

但是当我尝试这个时,例如

***************************
MyModule - :mod:`my.module`
***************************

To document
===========

Things that are not yet documented.

.. automodule:: my.module

.. autoclass:: MyClass
   :members:
   :undoc-members:
   :show-inheritance:
   :exclude-members: funky

Funky things
------------

Some funky things.

.. automethod:: funky
Run Code Online (Sandbox Code Playgroud)

我明白了

警告:不知道要导入哪个模块来自动记录 u'funky' (尝试在文档中放置“module”或“currentmodule”指令,或者给出明确的模块名称)

但没有变化

.. currentmodule:: my.module
.. class:: MyClass

.. automethod:: …
Run Code Online (Sandbox Code Playgroud)

python documentation python-2.7 python-sphinx autodoc

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

如何使用AWS CLI设置加密的Lambda环境变量?

我在本地拥有AWS Lambda环境变量,希望使用特定的KMS密钥加密并分配给Lambda函数.

我以为有点像

aws lambda update-function-configuration --function-name functionName --cli-input-json file://config.json
Run Code Online (Sandbox Code Playgroud)

config.jsonas

{
  "Environment": {
    "Variables": {
      "var01": "Variable one",
      "var02": "Variable two"
    }
  },
  "KMSKeyArn": "arn:aws:kms:us-west-1:09238573743:key/...."
}
Run Code Online (Sandbox Code Playgroud)

会做到这一点.但变量最终没有加密."KMSKeyArn"似乎只用于解密(例如在函数的处理程序中boto3.client('kms').decrypt).

如何使用AWS CLI获取理想情况下在JSON上指定的本地(未加密)值,并使用特定的KMS密钥将它们指定为Lambda函数环境变量的加密值(并确保将相同的密钥分配给函数以供boto3.client('kms').decrypt

我还想确保我的变量永远不会以纯文本形式传输(即加密发生在本地),如果可能的话.

encryption amazon-web-services aws-cli aws-lambda

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

我可以检索触发我的Lambda函数的AWS IoT Thing的名称吗?

我有一个Python Lambda函数来处理IoT Things的触发器.

有没有办法读取context交给处理函数(用Boto 3)来识别触发事物的名称 - 例如thingName提供给的那个get_thing_shadow

iot boto3 aws-lambda aws-iot

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

如何将我的夜间Haskell程序包放入Stackage LTS?

尽管我的软件包的最新版本在Stackage Nightly中出现了预期,但它并没有出现在LTS中,而是出现了旧版本.如何在LTS中显示最新版本?

haskell lts hackage stackage

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

如何覆盖Python的“ str”,使其返回大写的值?

我如何定义

class CapStr(str):
    # ...
Run Code Online (Sandbox Code Playgroud)

在Python(3.7+)中,以便结果str子类中的所有字母都大写,例如

>>> foo: CapStr = CapStr('aBcd')
>>> foo
'ABCD'
>>> CapStr('wXyZ')
'WXYZ' 
Run Code Online (Sandbox Code Playgroud)

python string python-3.x

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

如何安全地从 AppleScript 请求所需的密码?

我有一个运行 shell 脚本的简单 AppleScript(应用程序):

do shell script "sudo killall -TERM java"
Run Code Online (Sandbox Code Playgroud)

失败并显示“ sudo no tty present and no Askpass program specified ”。

这里所需的行为是打开 OS X密码对话框(希望能够保存在钥匙串中以供将来使用),但是(我猜)我缺少一个步骤,告诉脚本启动必要的“ Asker”(令人惊讶的是,默认情况下不会发生)。

试过了

do shell script "ssh-askpass Sudo Password | sudo killall -TERM java"
Run Code Online (Sandbox Code Playgroud)

但也会出现错误。

从 AppleScript 调用 OS X 密码拨号的正确方法是什么?

macos applescript sudo

0
推荐指数
1
解决办法
4360
查看次数

为什么我只需要较旧的GHC的Data.Monoid.(<>)?

在GHC 8.4之前的Haskell包 构建中,我需要

import Data.Monoid ((<>))
Run Code Online (Sandbox Code Playgroud)

避免

• Variable not in scope:
    (<>)
Run Code Online (Sandbox Code Playgroud)

从GHC 8.4开始,我没有错误,我排除了这个导入.

为什么是这样?已(<>)在其他地方实施?对于以后的GHC进行此导入会产生什么后果?可以有条件地导入这个仅用于较旧的GHC吗?

haskell package

0
推荐指数
1
解决办法
81
查看次数