小编Mat*_*dge的帖子

在Python 3.4中没有Python源文件运行

我正在尝试运行Python应用程序而不保留.py源文件,只依赖于.pyc编译的文件.但是,当我删除.py源文件时,我收到导入错误.此功能在Python 2.7中有效,但在3.4中没有(使用新__pycache__结构).

这是一个示例目录结构:

package/
  __init__.py
  module.py
Run Code Online (Sandbox Code Playgroud)

Python 2.7

首先让我们看看当我使用Python 2.7时会发生什么(这是所需的行为)

$ python2 -c "from package import module"
$ find package -name "*.py" -delete
$ python2 -c "from package import module"
Run Code Online (Sandbox Code Playgroud)

这一切都很好,不会抛出任何错误.执行此操作后的目录结构如下所示,.pyc文件与原始.py文件一起:

package/
  __init__.pyc
  module.pyc
Run Code Online (Sandbox Code Playgroud)

Python 3.4

现在,让我们用Python 3.4做同样的事情,再次从我们的原始目录结构开始

$ python3 -c "from package import module"
$ find package -name "*.py" -delete
$ python3 -c "from package import module"
 Traceback (most recent call last):
   File "<string>", line 1, in …
Run Code Online (Sandbox Code Playgroud)

python pyc python-3.x

21
推荐指数
2
解决办法
5154
查看次数

如何订购连接列表

我目前有一个存储在列表中的连接列表,其中每个连接是一个连接两个点的有向链接,没有任何点链接到多个点或链接到多个点.例如:

connections = [ (3, 7), (6, 5), (4, 6), (5, 3), (7, 8), (1, 2), (2, 1) ]
Run Code Online (Sandbox Code Playgroud)

应该产生:

ordered = [ [ 4, 6, 5, 3, 7, 8 ], [ 1, 2, 1 ] ]
Run Code Online (Sandbox Code Playgroud)

我尝试使用一种算法来做到这一点,该算法采用输入点和连接列表,并递归调用自身以找到下一个点并将其添加到增长的有序列表中.但是,当我没有从正确的点开始时,我的算法会崩溃(尽管这应该只是反向重复相同的算法),但是当有多个未连接的链时

编写有效算法来订购这些连接的最佳方法是什么?

python algorithm graph-theory graph-traversal

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

多个 SSH 配置文件

我喜欢在 ssh_config 文件中指定主机/身份文件/等的功能。然而,我理想地希望有几个不同的 SSH 配置,每个配置都有自己的版本控制。有没有办法从 ssh_config 中引用另一个 ssh_config 类型文件?

像这样的东西(语法是我正在寻找的,但在手册页Load中找不到。

〜/ .ssh /配置

Load config_file_a
Load config_file_b     
Run Code Online (Sandbox Code Playgroud)

〜/.ssh/config_file_a

# Options for one host
Host serverA
    HostName serverA.myserver.com
Run Code Online (Sandbox Code Playgroud)

〜/.ssh/config_file_b

# Options for another host
Host serverB
    HostName serverB.myserver.com
Run Code Online (Sandbox Code Playgroud)

ssh

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

通过路线在Google Cloud Storage中托管静态网站单页应用

到处都有有关如何执行此操作的指南和问题,但从来没有真正令人满意的具体答案。基本上,我想知道是否可以在GCP Cloud Storage中托管静态SPA(HTML / CSS / JS)。

主要警告是SPA具有自己的路由系统(ReactRouter),因此我希望所有路径都由index.html提供服务。

大多数指南会告诉您将ErrorDocument设置为index.html而不是404.html。尽管这是一个聪明的骇客,但它会使站点的HTTP响应代码为404,这对于SEO或监视工具来说是一场灾难。这样就可以了,只要我可以更改响应代码即可。

有什么办法可以使这项工作吗?我也已经启动并运行了CloudFlare,但是据我所知,没有办法修剪路径或从那里更改响应状态。

cloudflare google-cloud-storage single-page-application

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

使用优先级通过REST API推送到Firebase

是否可以使用REST API将事件推送到列表(通过HTTP POST)并指定正在推送的项目的优先级?也许作为JSON中的一个字段我会以某种方式发布?

像这样的东西(半伪代码):

var myObj = {name: 'My Name', address: 'My Address'};
myObj['priority'] = 123;

$.post('http://demo.firebase.com/demo/testing.json', myObj);
Run Code Online (Sandbox Code Playgroud)

我可以使用本机Javascript库以下列方式执行此操作,但这不使用REST API:

var fb = new Firebase('http://demo.firebase.com/demo/testing');
var foo = fb.push({name: 'My Name', address: 'My Address'});
foo.setPriority(1);
Run Code Online (Sandbox Code Playgroud)

firebase

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

奇怪的PHP行为:空,!和计数

有人可以向我解释这种"怪胎"行为是否符合我的预期.

我正在重新编写一些代码,并得到了这个:

我在$ data上创建了一些结果并创建了这个,以确保它的$ data有一些信息.

所以:

if(!$data || empty($data) || count($data) == 0)
Run Code Online (Sandbox Code Playgroud)

并且在if的地方.

所以我做了一些var_dump来看和哇.

var_dump(!$data , empty($data) , count($data));
Run Code Online (Sandbox Code Playgroud)

去吧:

bool(true)
bool(true)
int(1)
Run Code Online (Sandbox Code Playgroud)

count data = 1和!$ data = true和empty($ data)= true?

我希望不是愚蠢的问题,对不起,如果是的话.

php

5
推荐指数
2
解决办法
148
查看次数

如何将sh的输出设置为Groovy变量?

是否可以将sh命令的输出设置为Groovy变量?它似乎是将其设置为命令的状态.

输入示例:

node {
   stage "Current Date"
   def curDate = sh "date"
   echo "The current date is ${curDate}"
}
Run Code Online (Sandbox Code Playgroud)

结果如下:

Entering stage Current Date
Proceeding
[Pipeline] sh
[workspace] Running shell script
+ date
Tue May 10 01:15:05 UTC 2016
[Pipeline] echo
The current date is 0
Run Code Online (Sandbox Code Playgroud)

它显示The current date is 0,我希望它显示The current date is Tue May 10 01:15:05 UTC 2016你可以看到sh命令输出.我错了吗?

groovy jenkins jenkins-workflow

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

没有H移动到屏幕顶部

我通常已H映射到^使同一行中的导航更容易一些.

但是,我刚刚遇到一个插件(EasyMotion增强版),它使用H在搜索之前将光标移动到屏幕顶部.该插件似乎很有用,但显然我的H映射不会很好.

你能想到另一种方法将光标移动到功能中的屏幕顶部吗?基本上,在不使用H的情况下复制H的行为.

vim

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

映射到<c - [>但不覆盖<esc>

我想创建一个vimrc映射,让我可以更快地调整垂直分割的大小.我想过这样做:

noremap <c-[> :vertical resize +5<cr>
noremap <c-]> :vertical resize -5<cr>
Run Code Online (Sandbox Code Playgroud)

它运作得很好.唯一的问题是,因为我正在映射(控制和左方括号),当我在正常模式下击中Escape时,它也会导致分割的大小调整.我认为这是因为你通常可以作为逃避的替代品.

所以问题是,我可以映射该键序列但不映射Escape吗?我在这里丢失了一些蠢货吗?

vim

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