小编mig*_*rin的帖子

如何在Colab中降级Tensorflow版本?

我正在使用pip3 install tensorflow==1.8.0,但是它不支持GPU。

所以我正在使用pip3 install tensorflow-gpu==1.8.0,但仍然会引发异常

libcudart.so.VERSION没有此类文件。

我应该使用从源代码colab安装tensorflow吗?

之后pip3 list

tensorboard              1.10.0   
tensorflow               1.10.0   
tensorflow-hub           0.1.1   
Run Code Online (Sandbox Code Playgroud)

tensorflow google-colaboratory

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

使用 ffmpeg 时出现库未加载错误和 Abort trap: 6

将我的 mac 更新到 high Sierra 后,我无法使用ffmpeg

$ ffmpeg
dyld:未加载库:/opt/local/lib/libidn2.0.dylib
  引用自:/opt/local/lib/libgnutls.30.dylib
  原因:找不到图片
中止陷阱:6

我很感激任何帮助!

ffmpeg

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

从PDF文件中突出显示的注释中提取文本

从昨天开始,我正在尝试使用python-poppler-qt4从一个pdf中的一些突出显示的注释中提取文本.

根据这个文档,看起来我必须使用Page.text()方法获取文本,从高亮注释传递一个Rectangle参数,我使用Annotation.boundary().但我只得到空白文本.有人能帮我吗?我复制了下面的代码,并为我正在使用的PDF添加了一个链接.谢谢你的帮助!

import popplerqt4
import sys
import PyQt4


def main():

    doc = popplerqt4.Poppler.Document.load(sys.argv[1])
    total_annotations = 0
    for i in range(doc.numPages()):
        page = doc.page(i)
        annotations = page.annotations()
        if len(annotations) > 0:
            for annotation in annotations:
                if  isinstance(annotation, popplerqt4.Poppler.Annotation):
                    total_annotations += 1
                    if(isinstance(annotation, popplerqt4.Poppler.HighlightAnnotation)):
                        print str(page.text(annotation.boundary()))
    if total_annotations > 0:
        print str(total_annotations) + " annotation(s) found"
    else:
        print "no annotations found"

if __name__ == "__main__":
    main()
Run Code Online (Sandbox Code Playgroud)

测试pdf:https: //www.dropbox.com/s/10plnj67k9xd1ot/test.pdf

python pdf qt poppler

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

朱莉娅:删除软件包及其所有依赖项吗?

在添加一个包(例如MarketData)之后,使用以下命令:

Pkg.add("MarketData")
Run Code Online (Sandbox Code Playgroud)

这也会安装依赖项:

INFO: Installing BufferedStreams v0.4.0
INFO: Installing Codecs v0.4.0
...
Run Code Online (Sandbox Code Playgroud)

如何删除或卸载软件包及其所有依赖项?

packages julia

3
推荐指数
2
解决办法
9056
查看次数

ELISP 交互函数,将前缀参数和用户输入作为可选参数

interactive在 ELISP 中,代码文档提到:

P——原始形式的前缀 arg。不进行 I/O。... s -- 任意文本,读入迷你缓冲区并作为字符串返回...提示。

我认为我可以编写一个带有可选前缀参数的函数,如下所示:

(defun some-function (&optional prefix)
    (interactive "P")
    ...
)
Run Code Online (Sandbox Code Playgroud)

或具有用户输入的函数,如下所示:

(defun some-function (user-argument)
  (interactive "sProvide an argument: ")
  ...
)
Run Code Online (Sandbox Code Playgroud)

但不是两者兼而有之。然后我找到了 Org-mode 函数org-match-sparse-tree,我可以使用它来调用C-u C-c \,其中前缀参数限制匹配以打开 org-mode 标题,并且仍然提示我进行匹配。源代码如下,我找不到变量match是如何分配的:

(defun org-match-sparse-tree (&optional todo-only match)
  "..."
  (interactive "P")
  (org-agenda-prepare-buffers (list (current-buffer)))
  (let ((org--matcher-tags-todo-only todo-only))
    (org-scan-tags 'sparse-tree (cdr (org-make-tags-matcher match))
           org--matcher-tags-todo-only)))
Run Code Online (Sandbox Code Playgroud)

该函数如何同时获取前缀参数和用户输入?

lisp arguments elisp function option-type

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

`open -a Chrome` 返回 `无法找到名为 Chrome 的应用程序`

我已经Google Chrome安装在macOS. 该文件/Application/Google Chrome.app/Contents/Info.plist显示:

CFBundleIdentifier : com.google.Chrome   
CFBundleName : Chrome.
Run Code Online (Sandbox Code Playgroud)

我可以Google Chromeopen -b com.google.Chrome. 但是 'open -a Chrome' 返回Unable to find application named Chrome.

如何Google Chrome使用语法启动或其他通用应用程序open -a

包含应用程序详细信息和错误消息的屏幕截图

macos terminal google-chrome

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

in()函数或运算符的广播版本?

考虑一个数组,比如0到4.我想测试每个元素是否在列表中并返回一个布尔数组.所述的呼叫in返回单个布尔值,因为这左手侧阵列不是右侧数组的一个元素:

> a = 0:4;
> a in [1, 2]
false
Run Code Online (Sandbox Code Playgroud)

Julia是否有广播版本的in()函数或in运算符返回一个数组,如此调用map和lambda函数?

> map(x -> x in [1,2], a)
5-element Array{Bool,1}:
 false
  true
  true
 false
 false
Run Code Online (Sandbox Code Playgroud)

julia

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

Dockerfile 中的 touch 是做什么的?

我正在重复使用Dockerfile包含以下内容的 a :

\n\n
ADD dist /dist/\nARG JAR_FILE\nADD target/${JAR_FILE} /target/app.jar\nRUN sh -c \'touch /target/app.jar\'\nEXPOSE 8080\nENTRYPOINT ["sh", "-c", "java -jar /target/app.jar"]\n
Run Code Online (Sandbox Code Playgroud)\n\n

我理解除带有 的那一行之外的所有行touch这个网站说:

\n\n
\n

RUN sh -c \xe2\x80\x98touch /app.jar\xe2\x80\x99\xe2\x80\x93 触摸我们的文件,使其具有修改时间(Docker 默认情况下以 \xe2\x80\x9cunmodified\xe2\x80\x9d 状态创建所有容器文件)

\n
\n\n

我知道触摸文件会更改其修改日期。为什么 Docker 需要文件上的时间戳,或者为什么这样做是一个好习惯?

\n

docker dockerfile

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

如何在 doctest 变量中包含换行符?

我想将输入到文档测试的文本分成新行。这是一个最小的例子:

import doctest

def example1():
    """
    >>> txt = '\\n'.join(['abcd', 'efg'])
    """

    return '\\n'.join(['abcd', 'efg'])


def example2():
    """
    >>> txt = '\\n'.join(['abcd',
    'efg'])
    """

    return '\\n'.join(['abcd',
    'efg'])

doctest.testmod()
Run Code Online (Sandbox Code Playgroud)

结果是:

File "example.py", line 16, in __main__.example2
Failed example:
    txt = '\n'.join(['abcd',
Exception raised:
    Traceback (most recent call last):
      File "/usr/local/Cellar/python/3.7.4/Frameworks/Python.framework/Versions/3.7/lib/python3.7/doctest.py", line 1329, in __run
        compileflags, 1), test.globs)
      File "<doctest __main__.example2[0]>", line 1
        txt = '\n'.join(['abcd',
                               ^
    SyntaxError: unexpected EOF while parsing
Run Code Online (Sandbox Code Playgroud)

数组内换行的语法适用于函数体,但不适用于文档测试。如何将文档测试中的长字符串排列成新行?

python doctest newline

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

为每个终端加载.bash_profile

我在Max OS X的.bash_profile中设置了一些别名。它可以工作,但是当我打开一个新标签时,我总是必须使用以下命令加载.bash_profile文件:

source ~/.bash_profile
Run Code Online (Sandbox Code Playgroud)

即使我重新启动Mac或Linux计算机,我如何使它在打开的每个终端上也都能正常工作?

unix macos bash

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

在文档测试中显示打印函数调用的结果

我正在调试文档测试的失败。我使用print()语句而不是模拟器和断点进行调试。文档测试似乎抑制了stdout正在测试的功能。

有没有办法只执行文档测试,忽略打印函数调用?提到了相反的,如何抑制打印函数调用。Python3 中的行为似乎发生了变化。

一种笨拙的解决方案是将 doc-test 的主体复制到main(),删除前导尖括号,调试,复制回来,然后迭代。将函数保留在文档测试中会更容易。

此命令打印 doctest 的扩展输出,但不打印被测试函数的扩展输出:

python3 -m doctest -v module.py 
Run Code Online (Sandbox Code Playgroud)

如何包含被测函数的打印函数调用的输出?

更新

这是文档测试的最小示例。

import doctest

def sum(a, b):
    """
    >>> 2 == sum(1, 1)
    True
    >>> n = sum(1, 1)
    >>> 2 == n
    True
    """

    print("Hello world")
    return False  # anything to break the test


doctest.testmod(optionflags=doctest.ELLIPSIS)
Run Code Online (Sandbox Code Playgroud)

结果是:

**********************************************************************
Failed example:
    2 == sum(1, 1)
Expected:
    True
Got:
    Hello world
    False
**********************************************************************
Failed example:
    n = sum(1, 1)
Expected …
Run Code Online (Sandbox Code Playgroud)

python doctest

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