小编And*_*bie的帖子

PyInstaller OS X 应用程序从命令行运行,但不是 Finder 窗口

我在 OS X 上使用 PyInstaller 创建了一个应用程序包。如果我在 Finder 中双击 .app 包,该应用程序会尝试启动,然后终止。除了应用程序退出之外,控制台中没有提供更多信息。

但是,如果我从终端启动应用程序可执行文件(即,./Contents/MacOS/MyApplication它工作得很好。这似乎与此问题中经历的行为相同:如果应用程序包是从 finder 执行的,但从命令运行良好,则使用 python 构建的 OSX 应用程序会立即退出line,但是那里标记的解决方案并不是特别有用。

我怀疑这确实与环境或路径问题有关。但我不知道如何解决它。info.plist也许应该在文件中指定一些内容吗?任何指导将不胜感激。

macos pyinstaller

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

解析 JSON 对象以获取列数据

假设我有一个 JSON 对象中的数据,其格式类似于...

{"data":
       [["X","Y","Z"], 
       ["52","23","10"],
       ["46","65","32"]]
}
Run Code Online (Sandbox Code Playgroud)

所以基本上,每一行都采用形式[X, Y, Z]

然后访问整个“列”或数据向量的最简单方法是什么?例如,假设“X”、“Y”和“Z”是标题行,我想访问所有“X”数据。

我是否需要以某种方式遍历整个对象以检索每个元素的第一个成员,这将对应于“X”列?

如果可能,我想在 JavaScript 中执行此操作。

非常感谢您的帮助!

javascript json

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

使用ZeroMQ向特定客户端发送回复并在客户端断开连接时排队

我是ZeroMQ的新手,正在尝试找出设计问题。我的情况是,我有一个或多个客户端将请求发送到单个服务器。服务器将处理请求,进行一些处理,然后将回复发送给客户端。有两个条件:

  • 答复必须发送给发送请求的客户端。
  • 如果客户端断开连接,则服务器应将消息排队一段时间,以便客户端重新连接时,它可以接收错过的消息。

我很难确定实现此目的的最简单方法。

我尝试过的事情:

  • PUB / SUB-我可以用主题标记回复,以确保只有发送请求的订户(以主题为标识符)才能收到正确的回复。这可以解决路由问题,但是由于发布者不了解订阅者,因此对于断开连接的客户端一无所知。

  • 推/拉-似乎能够处理消息排队问题,但似乎不支持我的将消息发送给特定客户端的计划(例如,基于其ID)。

  • ROUTER / DEALER-设计似乎是两者的解决方案,但是所有示例似乎都非常复杂。

我现在的想法是继续使用PUB / SUB,尝试在客户端上实现某种心跳(允许服务器检测到客户端的存在),并且当客户端不再发送心跳时,它将停止发送标记为的消息。它的主题。但这似乎不是最佳选择,并且还会涉及另一个套接字。

关于实现此目标的其他方式是否有任何想法或建议?任何信息,将不胜感激。我正在使用Python工作,但是任何语言都可以。

zeromq pyzmq

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

高效检测单页面应用中的 DOM 变化

我正在构建一个 JS 库,其中一个用例要求我触发 DOM 更改事件,特别是如果它是单页应用程序,例如: github 搜索栏 经过一些研究后我发现MutationObserver

// Dom change event listner
MutationObserver = window.MutationObserver || window.WebKitMutationObserver;
var observer = new MutationObserver(function(mutations, observer) {
    // fired when a mutation occurs
    attachListners();
    // ...
});

observer.observe(documentAlias, {
  subtree: true,
  childList: true
  //...
});
Run Code Online (Sandbox Code Playgroud)

问题:我正在构建的库旨在插入任何网站,因此我无法控制 html 实现。我有点担心使用突变观察器可能会进入无限循环。在同一行看到很多堆栈溢出问题。

有没有其他/更好的方法?如何安全有效地检测 DOM 更新/更改?或者突变观察者是最好的选择

javascript dom-events

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

涉及 Three.js 点云中各个点的光线投射

我有一个PointCloud显示多个点的对象。我希望能够在单击点周围绘制一个边界框。PointCloud不幸的是,如果可能的话,我似乎无法弄清楚如何访问 中的各个点。

这是我正在使用的光线投射代码......

window.addEventListener('dblclick', function (ev) {
    var mouse = { x: 1, y: 1 };
    mouse.x = ( event.clientX / window.innerWidth ) * 2 - 1;
    mouse.y = -( event.clientY / window.innerHeight ) * 2 + 1;

    var raycaster = new THREE.Raycaster();

    raycaster.params.PointCloud.threshold = 15;
    var vector = new THREE.Vector3(mouse.x, mouse.y, 0.5).unproject(camera);
    raycaster.ray.set(camera.position, vector.sub(camera.position).normalize());
    scene.updateMatrixWorld();
    var intersects = raycaster.intersectObject(particles);

    if (intersects.length > 0) {

        console.log(intersects[0]);
        var hex  = 0x000000;

        var bbox = new THREE.BoundingBoxHelper(intersects[0], hex); …
Run Code Online (Sandbox Code Playgroud)

javascript three.js

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

如何在 html 5 画布上使用 FontAwesome 图标

我在 HTML 5 画布中使用 FontAwesome 图标时遇到问题,我试过这个:

ct.fillStyle = "black";
ct.font = "20px Font Awesome";
ct.textAlign = "center";

var h = 'F1E2';

ct.fillText(String.fromCharCode(parseInt(h, 16)), x, y);
Run Code Online (Sandbox Code Playgroud)

我尝试导入 FontAwesome CSS 文件,但没有成功!有人可以帮我解决这个问题吗?

谢谢!

html javascript html5-canvas font-awesome

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

将Python列表值映射到字典值

我有一个行列表......

rows = [2, 21]

和数据字典......

data = {'x': [46, 35], 'y': [20, 30]}

我想构建第二个字典,dataRows用这个看起来像这样的行键入...

dataRows = {2: {'x': 46, 'y': 20}, 21: {'x': 35, 'y': 30}}

我尝试了以下代码,但值dataRows始终相同(循环中的最后一个值):

for i, row in enumerate(rows):
    for key, value in data.items():
        dataRows[row] = value[i]
Run Code Online (Sandbox Code Playgroud)

任何帮助将不胜感激.

python

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

如何将十进制转换为十六进制变量?

我有很多文件 bmp 和 jpg,需要提取没有扩展名的文件名,在前面写一个特定的文本,在后面写一个十六进制变量,然后把它放在一个名为的文本文件中 list.txt

例如,文件是:picture1.bmp, picture2.spr,picture3.bmp

我提取没有扩展名的文本名称,在特定文本之前和提取名称之后放置一个十六进制变量,因此它在以下位置完成list.txt

abc picture1 0x7f020000

abc picture2 0x7f020001

abc picture3 0x7f020002
Run Code Online (Sandbox Code Playgroud)

我不知道如何写入十六进制字符串,list.txt因为我的脚本将其转换为 base10。

我的脚本创建list.txt如下:

abc picture1 2130837504

abc picture2 2130837505

abc picture3 2130837503
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的代码:

$a=".field public static final "

$b=":I = "

$c= 0x7f01ffff

Get-ChildItem -Recurse -Include *.bmp,*.spr | ForEach-Object {$a+$_.BaseName+$b+(++$c)} | Out-File list.txt
Run Code Online (Sandbox Code Playgroud)

powershell

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

简化Python字符串正则表达式/模式匹配

以下代码执行我想要的操作:

if myString.startswith(", "):
    myString = myString.lstrip(", ")
if myString.endswith(", "):
    myString = myString.rstrip(", ")
if re.search(", ,", myString):
   myString = re.sub(", ,", "", myString)
Run Code Online (Sandbox Code Playgroud)

基本上,我希望它删除任何领先的逗号,尾随逗号,并且任何地方出现两个逗号,它们之间没有任何内容.这样做的伎俩,但我打赌有一种方法可以简化这一点,使其更优雅,并使用更少的代码行.

任何建议真的很感激.提前致谢!

python regex

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

旋转相机时旋转文本以面向用户

如果你看看我的小提琴:

http://jsfiddle.net/jmg157/Y35cQ/1/

你会看到我在立方体轴上有网格标签.我想做的是每当用户围绕立方体旋转时,文本也会旋转,以便数字始终面向用户.

我尝试了类似的东西xMarks.rotation = camera.rotation,xMarks文本对象在哪里,但没有成功.任何建议将不胜感激.

three.js

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