小编gut*_*rie的帖子

Python pip安装失败:命令egg_info无效

我发现最近经常在我尝试使用pip安装Python包时,我得到下面的错误.

我在网上找到了一个必须使用下载目录中的" python2 setup.py install " 的参考资料,并且确实发现如果我手动查找并下载软件包(来自pypi),这将会有效.

但是,我不知道pip在哪里下载包,和/或为什么它以这种方式失败.

我尝试进行点升级,但它也以类似的方式失败,出现了一堆"未知的分发选项"错误(entry_points,zip_safe,test_suite,tests_require)!

尝试使用ActiveState的pypm失败,因为它们具有较小的库基础,并且它不包括这些包.

C:\test>pip install requests-oauth
Downloading/unpacking requests-oauth
  Downloading requests-oauth-0.4.1.tar.gz
  Running setup.py egg_info for package requests-oauth
    E:\Plang\ActivePython\lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'zip_safe'
      warnings.warn(msg)
    E:\Plang\ActivePython\lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'install_requires'
      warnings.warn(msg)
    usage: -c [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
       or: -c --help [cmd1 cmd2 ...]
       or: -c --help-commands
       or: -c cmd --help

    error: invalid command 'egg_info'
    Complete output from command python setup.py egg_info:
    E:\Plang\ActivePython\lib\distutils\dist.py:267: UserWarning: Unknown distribution …
Run Code Online (Sandbox Code Playgroud)

python pip

205
推荐指数
10
解决办法
34万
查看次数

python一行函数定义

这必须很简单,但作为一个偶尔的python用户,与一些语法作斗争.这有效:

def perms (xs):
    for x in itertools.permutations(xs): yield list(x) 
Run Code Online (Sandbox Code Playgroud)

但这不会解析:

def perms (xs): for x in itertools.permutations(xs): yield list(x) 
Run Code Online (Sandbox Code Playgroud)

单行函数语法是否有一些限制?正文定义(for ...)可以是两行或一行,而def:可以是一行或两行,具有简单的主体,但两者结合失败.是否有排除此的语法规则?

python

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

将多个工作表保存为.pdf

我有一个报告电子表格,它从数据库中获取一些数据并形成三张摘要报告信息.我想从命令行自动运行电子表格,并让它自动将所有三个报告表格保存为PDF文件.

起初我以为我可以在工作表上有一个VBA宏,通过一系列"打印为PDF",但这需要一个中间交互式对话框来指定输出文件名.然后我发现我可以保存为pdf,宏可以设置输出文件名.然而,这会创建三个单独的文件,然后我必须在外部将它们放在一起以合并它们.

(奇怪的是,保存为pdf只保存一张,其他保存模式似乎可以保存整个工作簿.)

是的,有些工具可以在以后合并这三个文件,但是我想知道是否有一些简单的方法可以让Excel将多个工作表一起保存为一个pdf文件.

我现在打印一系列的东西,如:

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, ...
Run Code Online (Sandbox Code Playgroud)

我可以做一个像(伪代码)的单一语句:

ThisWorkbook.Sheets(1,2,3,4).ExportAsFixedFormat Type:=xlTypePDF, ...
Run Code Online (Sandbox Code Playgroud)

pdf excel vba pdf-generation export-to-pdf

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

Haskell quickcheck - 如何只生成可打印的字符串

我有一组简单的演示程序,它们编码/解码字符串,并希望为它们生成一些quickCheck测试,但是只能将测试限制为可打印的字符串.由于生成和拒绝的测试用例太多,使用防护太慢而失败,因此我想为此域创建一个安全的生成器.

我已经看到了这个引用说:(1)定义了自己的任意实例字符,并用它来生成字符串只可打印字符,或(2)有包装器函数本身的NEWTYPE,写一个任意实例.

但是尝试做(1)它失败了,因为现在在Test.QuickCheck中有这个定义,所以如何做到这一点 - 为新类型创建一个safeChar生成器然后再次必须为测试函数生成一个适配器?(关于此的RWH书籍部分指出,它推荐这个DIY Char定义已过时.)

尝试做(2)似乎我可以只为测试命题添加一个本地化和简单(但失败)的保护,或者编写一个新的包装器和相关的生成器,这似乎更加混乱.

显然这很简单(!)并且提供了所有工具,但有人可能会建议这是否是正确的分析,并举例说明如何做到这一点?

haskell quickcheck

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

运行wxHaskell的问题(Windows)

页面:(http://en.wikibooks.org/wiki/Haskell/GUI)描述了运行wx代码,可以安装wx然后必须"用GHC注册wxHaskell" - 但我认为wxHaskell的二进制安装程序(http://wxhaskell.sourceforge.net/download.html)会自动执行此操作吗?

我安装了wx-config,然后安装了wxPack和wxHaskell.然后做了wx和wxcore的cabal安装.我正在从Leksah运行一些wx演示,这些演示看起来非常好 - 但是他们有一些奇怪的错误(我找到了一个所谓的解决方案:"wxhaskell-labels-cant-display-full-text"),但我想尝试一些来自GHCi的事情.

我尝试运行他们的简单演示,以及错误:

D:\csPlangs\Haskell\play>ghci -package wx wxGui1.hs
GHCi, version 7.0.3: http://www.haskell.org/ghc/  :? for help
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package array-0.3.0.2 ... linking ... done.
Loading package stm-2.2.0.1 ... linking ... done.
Loading package bytestring-0.9.1.10 ... linking ... done.
Loading package containers-0.4.0.0 ... linking ... done.
Loading package Win32-2.2.0.1 ... linking ... done.
Loading package filepath-1.2.0.0 ... linking ... …
Run Code Online (Sandbox Code Playgroud)

haskell wxhaskell

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

与二元算子的组合?

我想做一些相当简单的事情; 我正在使用带有Data.Map insertWith的运算符(++),它工作正常,但我想消除创建的值中的重复,所以想要用nub组合它.

我试过(nub(++)),(nub $(++)),(nub.(++)),都无济于事,因为(++)的类型与预期的小块类型不匹配( [一个] ).

我当然可以定义一个辅助函数或一个lambda,但我认为可能有一个更清晰的组合.

请提示!

haskell function-composition

8
推荐指数
2
解决办法
762
查看次数

类似的Haskell列表理解具有不同的结果

我不明白为什么这两个相似的列表推导会给出不同的结果:

Prelude> let t2s n= [ 1/(2*i) | i <- [1,3..n]]
Prelude> t2s 0
[0.5]
Prelude> let t2s n= [   (2*i) | i <- [1,3..n]]
Prelude> t2s 0
[]
Run Code Online (Sandbox Code Playgroud)

我希望两人都能[]在论证上回归0.我一定是想念傻事了?!

haskell list-comprehension

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

Haskell 通过浏览器获取 URL

我想在 Haskell 中进行一些屏幕抓取(来自 Netflix),但该站点需要 cookie 登录状态,因此大多数示例使用浏览器自动化要求登录浏览器执行实际的 URL 获取,然后抓取从那个文本。

我想要(在 Ruby 中)的一个很好的例子是:https : //gist.github.com/1425290

有没有什么简单的方法可以从 Haskell 做等效的事情?

haskell screen-scraping web-scraping

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

带有catch的Haskell类型错误

我正在玩一些在线示例,其中一个有这样的短语:

   do ... contents <- getDirectoryContents path `catch` const (return []) 
Run Code Online (Sandbox Code Playgroud)

但它不会为我编译,并给出错误:

No instance for (Exception e0) arising from a use of `catch'
The type variable `e0' is ambiguous
Possible fix: add a type signature that fixes these type variable(s)
Note: there are several potential instances:
  instance Exception NestedAtomically
    -- Defined in `Control.Exception.Base'
  instance Exception NoMethodError
    -- Defined in `Control.Exception.Base'
  instance Exception NonTermination
    -- Defined in `Control.Exception.Base'
  ...plus 7 others
In a stmt of a 'do' block:
  contents <- getDirectoryContents …
Run Code Online (Sandbox Code Playgroud)

haskell exception-handling exception

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

Haskell - 非法多态类型?

为什么这种类型的单一用法编译,但将其放入列表失败?

ft1  :: (Foldable t, Num a) => t a -> a
ft1   =   (F.foldl (+)  0)

fTest :: [(Foldable t, Num a) => t a -> a ]
fTest = [ F.foldl (+)  0 ]
Run Code Online (Sandbox Code Playgroud)

后者给出错误:

folding.hs:80:10:
    Illegal polymorphic or qualified type:
      (Foldable t, Num a) => t a -> a
    Perhaps you intended to use ImpredicativeTypes
    In the type signature for `fTest':
      fTest :: [(Foldable t, Num a) => t a -> a]
Run Code Online (Sandbox Code Playgroud)

Simliarly,尝试命名它失败(不同):

type Ftst t a …
Run Code Online (Sandbox Code Playgroud)

haskell

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