小编Nik*_*as9的帖子

使用all with multi argument函数

假设我有一个带有一个参数的函数a和一个带有可能输入的列表b,定义如下:

let a x1 = x1 == 3
let b = [3, 3]
Run Code Online (Sandbox Code Playgroud)

现在我想测试b中的所有值都返回True作为a的参数,我可以使用all函数:

all a b
> True
Run Code Online (Sandbox Code Playgroud)

但是,如果a将采用两个参数并且b将是元组列表,其中元组中的每个值对应于每个参数,我可以执行类似的操作吗?

例如:

let a x1 x2 = x1 == 3 && x2 == 1
let b = [(3,1), (3,1)]
all a b
Run Code Online (Sandbox Code Playgroud)

返回:

<interactive>:1:4:
    Couldn't match expected type `Bool'
           against inferred type `a1 -> Bool'
    In the first argument of `all', namely `a'
    In the expression: all a b
    In the definition of `it': it = all a b
Run Code Online (Sandbox Code Playgroud)

关于如何做到这一点的任何想法?

haskell

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

使用 Python lxml 连续写入输出文件

我正在将大量数据从数据库写入 XML 文件。我正在使用 Python 及其 lxml 库来创建该文件。我注意到它在内存中生成整个 XML 文件,然后将其输出到最后的文件中,是否有一种方法可以为每 X 个数据库对象转储 xml 文件?

import lxml.etree as etree
import os

root = etree.Element('root')
db_obj1 = etree.SubElement(root, 'item')
db_obj2 = etree.SubElement(root, 'item')
db_obj3 = etree.SubElement(root, 'item')
et = etree.ElementTree(root)
et.write(sys.stdout)
Run Code Online (Sandbox Code Playgroud)

我尝试过使用 ElemenTree().write(),但在http://lxml.de/api/lxml.etree._ElementTree-class的文档中找不到有关如何完成此操作的任何设置或最佳实践.html

寻求减少总内存占用。

python lxml

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

iptables阻止与mongodb的本地连接

我有一个带有mongodb(2.0.4)的VM(Ubuntu 12.04.4 LTS),我想用iptables限制只接受SSH(进/出)而不是别的.这就是我的设置脚本设置规则的方式:

#!/bin/sh

# DROP everything
iptables -F
iptables -X
iptables -P FORWARD DROP
iptables -P INPUT DROP
iptables -P OUTPUT DROP

# input
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -s 127.0.0.1 -j ACCEPT  # accept all ports for local conns

# output
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p tcp -m tcp --dport 22 -j ACCEPT  # ssh
Run Code Online (Sandbox Code Playgroud)

但是这些规则被激活后,我无法在本地连接到mongodb.

ubuntu ~ $ mongo
MongoDB shell version: …
Run Code Online (Sandbox Code Playgroud)

iptables mongodb

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

Django将在下一个Ubuntu 14.04 LTS中出现什么版本?

我目前正在Ubuntu 12.04 LTS上运行一堆Django应用程序,但我希望在它发布时将操作系统升级到14.04 LTS.由于Ubuntu 12.04 LTS附带了相当旧的Django 1.3版本,我希望有我需要做的一些应用程序更改,以便我的应用程序继续工作(不推荐使用的API等).

django ubuntu

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

Python错误OSError:[Errno 31]链接太多

请参阅下面的错误消息,我在尝试使用Python的本机操作系统库创建新目录时得到此消息.

...

File "files.py", line 93, in create_dir 
os.makedirs(d) 

File "/usr/lib/python2.7/os.py", line 150, in makedirs 
makedirs(head, mode) 

File "/usr/lib/python2.7/os.py", line 157, in makedirs 
mkdir(name, mode) 

OSError: [Errno 31] Too many links: '/var/lib/kaas/77520' 
Run Code Online (Sandbox Code Playgroud)

我可以看到此目录中已有超过32000个目录

$ ll | wc -l
32001
Run Code Online (Sandbox Code Playgroud)

操作系统级别是否有限制可以创建多少目录或导致此问题的原因?或者这是Python限制?

我正在运行Ubuntu 12.04.4 LTS.

python ubuntu

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

确保在jQuery中完成所有异步调用

我有一个webapp,它使用jQuery:s $ .get和$ .post方法进行一系列异步API调用.在激活按钮(display:none/block)之前,我需要确保所有这些都已成功完成(HTTP状态代码200).

有没有办法确保没有未完成的异步调用在jQuery中等待开箱即用?或者我是否需要自己跟踪?

我正在使用jQuery v1.8.3.

javascript jquery

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

标签 统计

python ×2

ubuntu ×2

django ×1

haskell ×1

iptables ×1

javascript ×1

jquery ×1

lxml ×1

mongodb ×1