小编OMG*_*gar的帖子

Errno 2 using python shutil.py 文件目的地没有这样的文件或目录

我正在使用shutil python 模块在linux redhat 机器上复制文件和目录。

我编写了以下方法,它接受 2 个参数:src(正在收集的文件或目录的路径)和目标(将收集的日志/目录粘贴到的所需新路径)。

def copy(src, destination):
    if(os.path.exists(src)):
        if(os.path.isdir(src)):
            if(os.path.exists(destination)):
                shutil.copytree(src, destination+getTimeStamp())
            else:
                shutil.copytree(src, destination)
        else:
            shutil.copy(src, destination)
    else:
        print src+" not found"
Run Code Online (Sandbox Code Playgroud)

我一直在用这个方法很好,但我最近在运行这段代码时遇到了一个错误:

copy("/home/midgar/logs/logger.xml", currentPath+"/testrun/logs/logger.xml")
Run Code Online (Sandbox Code Playgroud)

错误:IOError: [Errno 2] No such file or directory: 'collectedLogs/testrun/logs/logger.xml'

如果它正在寻找的文件或目录是 src,我会理解这个错误意味着什么,但这是导致错误的目标。我发现这行抛出错误的代码行在我的复制方法中:“shutil.copy(src, destination)”。

到目前为止,我的复制方法只是覆盖现有文件,如果存在现有目录,它会创建一个带有时间戳的新目录。在这种情况下,目标文件无论如何都不存在。那么,这可能是什么问题?为什么我会在 DESTINATION 路径中出现此错误(当我通常希望在 SRC 路径中看到此类错误时)。

可能是因为这是一个 .xml 文件吗?

python xml linux file shutil

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

二维网格中对象的碰撞处理

我正在用 Java 开发一个模拟,其中对象在 2D 网格中移动。网格中的每个单元格只能被一个单元格占据,并且物体通过从一个单元格移动到另一个单元格来移动。

这比 Java 特定的更理论化,但是有人知道我应该如何使用这个网格进行碰撞处理吗?人们是否使用过任何算法来处理网格世界中的碰撞?

请注意,我不是在谈论碰撞检测,因为这是微不足道的,因为对象从一个单元移动到另一个单元。我说的是碰撞处理,它可能会变得非常复杂。

例如:对象 A 希望移动到与对象 B 相同的位置,而对象 C 希望移动到对象 B 的当前位置。由于每个单元只能包含一个物体,如果物体 A 能够移动到其所需位置,这将导致物体 B 保持静止,从而导致物体 C 也​​保持静止。

可以想象,这可能会产生更长的需要处理的冲突链。

人们使用过哪些算法或方法可以帮助解决这个问题?如果搜索结果没有被碰撞检测算法饱和,则几乎不可能搜索到这个问题。

编辑:所有物体同时移动。我想限制必须保持静止的对象的数量,因此我更喜欢首先处理具有较长碰撞链的对象(如本例中的对象 B)。

java algorithm collision multidimensional-array

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

在Python中将JSON转换为HTML表

我一直在使用Python的JSON库来使用Python从JSON文件中获取数据.

infoFromJson = json.loads(jsonfile)
Run Code Online (Sandbox Code Playgroud)

我完全理解如何在Python中使用JSON文件.但是,我试图找到一种方法来以一种很好的方式格式化JSON格式.

我更喜欢将JSON转换为嵌套的HTML表格式.

我发现了Python的json2html,它正是我刚才所描述的.但是,当我运行它们提供的脚本时,它实际上并没有输出任何内容.

有没有人有这个工具的经验?或者有没有人有替代方案的建议?

html python json html-table json2html

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

使用python创建命令行别名

我想在我的一个python脚本中创建命令行别名.我已经尝试过os.system(),subprocess.call()(有和没有shell = True)和subprocess.Popen(),但我没有运气这些方法.为了让您了解我想要做的事情:

在命令行上我可以创建这个别名:别名hello ="echo'hello world'"

我希望能够运行一个为我创建这个别名的python脚本.有小费吗?

我也很想在随后能够在Python脚本中使用此别名,就像使用subprocess.call(化名),但对我来说并不如创建别名是非常重要的.

python bash alias subprocess

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

Safari Translate3d 因滚动事件而滞后

我在 Javascript 中使用滚动事件侦听器在滚动完成时手动定位元素。

myContainerElement.addEventListener('scroll', function (e) {
  const transform = 'translate3d(' + this.scrollLeft + 'px,0,0)';
  scrollMyElement(transform);
});
Run Code Online (Sandbox Code Playgroud)

请注意,这scrollMyElement只是将变换添加到元素的样式中。这在 Firefox 和 Chrome 上效果很好,但我在 Safari 上遇到了问题。使用滚轮/触摸板或滚动条,滚动时元素似乎落后于页面的其余部分。

我能够通过以下解决方案解决鼠标滚轮/触摸板的这个问题:DOM元素位置滚动时缓慢+滚动条滚动和鼠标/触摸板滚动之间的差异

因此,在 Safari 中,现在使用鼠标滚轮/触摸板效果很好,但在使用滚动条时仍然滞后(就像上面发布的解决方案中的示例)。我怎样才能解决这个问题?!

我尝试过的事情:

  1. -webkit-perspective: 1000; -webkit-backface-visibility: hidden;
  2. -webkit-transform: translate3d(0,0,0)另外为了性能
  3. 使用所有供应商前缀转换,例如 webkit、moz、o、ms。

javascript css safari scroll css-transforms

5
推荐指数
0
解决办法
1209
查看次数

React Router 获取 Prompt 或 history.block 的结果

我正在使用 React-Router 的提示在离开页面之前显示确认对话框。他们实施提示符下使用history.block历史包,它使用浏览器的默认对话框。问题是许多浏览器显示“阻止此页面创建其他对话框”选项,并且当用户单击此选项时,将完全忽略会启动提示对话框的任何操作(单击时没有任何反应)。

我正在尝试实施一种解决方法,该解决方法要求我获取 Prompt 的结果,或获取history.block. 有没有办法在使用创建的对话框上进行选择后立即执行操作history.block

javascript dialog reactjs react-router react-router-v4

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