小编Ben*_*ell的帖子

如何以wheel格式安装Python库?

我正在寻找有关如何以轮式格式安装Python库的教程.

它似乎并不简单,所以我很欣赏一个简单的一步一步教程如何为CPython安装名为"requests"的模块.

我从以下网址下载了它:https://pypi.python.org/pypi/requests现在我有一个.whl文件.我在Windows上有Python 2.7和3.3,所以如何安装它以便我运行的所有其他Python脚本都可以使用它?

python installation module python-wheel

30
推荐指数
3
解决办法
12万
查看次数

JSON替代方案(用于指定配置)?

我喜欢json作为我编写的软件配置文件的格式.我喜欢它轻巧,简单,并得到广泛支持.但是,我发现在json中有一些我真的很喜欢它没有的东西.

Json没有多行字符串或这里的文档(http://en.wikipedia.org/wiki/Here_document),当你希望你的json文件是人类可读和可编辑的时候,这通常很尴尬.您可以使用字符串数组,但这是一个kludgy解决方法.

Json不允许评论.

如果你看一下unix配置文件的格式,你会看到很多人为自己设计自己笨拙的格式,使用某种通用的东西真的更有意义.例如,以下是Apache配置文件中的一些代码:

RewriteEngine on
RewriteBase /temp
RewriteCond %{HTTP_ACCEPT} application/xhtml\+xml
RewriteCond %{HTTP_ACCEPT} !application/xhtml\+xml\s*;\s*q=0
RewriteCond %{REQUEST_URI} \.html
RewriteCond %{THE_REQUEST} HTTP/1\.1
RewriteRule t\.html t.xhtml [T=application/xhtml+xml]
Run Code Online (Sandbox Code Playgroud)

本质上,这里发生的是他们发明了一种非常痛苦的方式来编写布尔函数f(w,x,y,z)= w&!x&y&z.你想要一个合乎逻辑的"或"?他们也有一些独立(丑陋)的机制.

这似乎指向的是某种数据描述语言,它简单且图灵不完整,但仍比json更具表现力,灵活性和方便性.有谁知道这样的语言?

根据我的口味,XML太复杂了,而且lisp表达式具有错误的功能(Turing-completeness)并且缺少正确的功能(这里是文档,表达语法).

[编辑]标题具有误导性.我对json的下一次迭代并不感兴趣.我对作为javascript子集的语言不感兴趣.我对其他数据描述语言感兴趣.

json

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

应该通过utf8 :: decode对perl的File :: Glob进行后期过滤吗?

以下最小示例的输出显示(在我的linux机器上)File :: Glob似乎具有将utf8字符串转换为非utf8的意外副作用:

#!/usr/bin/perl 

use utf8;

use strict;

my $x = "påminnelser";
my $y = glob $x;

print "x=",utf8::is_utf8($x),"=\n";
print "y=",utf8::is_utf8($y),"=\n";
Run Code Online (Sandbox Code Playgroud)

这导致我的程序出现错误行为.在linux上,看起来我可以通过在File :: Glob之后应用utf8 :: decode()来修复它.这是解决这个问题的正确方法吗?这是File :: Glob中的错误吗?我的修复程序是否会在Windows等其他系统上产生正确的结果?

unicode perl utf-8 internationalization

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

为什么我们可以修改复杂参数但不修改ruby函数中的标量?

问题是Ruby通过引用或值传递?吸引了很多有用的答案,也有很多不同意见.到目前为止,我在任何答案中都没有看到的是解释以下内容的任何内容:

ruby -e "def f(x) x=7 end; a=3; f(a); print a" 打印3.

ruby -e "def f(x) x[0]=7 end; a=[3]; f(a); print a[0]" 打印7.

根据经验,这看起来像标量对象和更复杂的对象(如散列和数组)之间存在某种区别,标量通过引用传递给值和复杂对象.这类似于C的语义.

我的理解是ruby中的所有东西都是一个对象,而早期问题的答案都没有提到标量和复杂类型之间的区别.那么我的描述是错误的,如果是,那么更好的描述是什么?

ruby pass-by-reference

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