小编Fel*_*bek的帖子

对称字典,其中d [a] [b] == d [b] [a]

我在python中有一个算法,它为值对创建度量,其中m(v1, v2) == m(v2, v1)(即它是对称的).我有想法写一个词典字典,其中这些值以一种以内存有效的方式存储,以便可以使用任何顺序的键轻松检索它们.我喜欢从事物中继承,理想情况下,我喜欢写一个总是等于的symmetric_dict地方,可能是根据某种排序关系检查哪个v更大然后切换它们以便更小的元素总是首先提到.也就是说,在调用时,dicts的字典会将它们转过来,以便它们实际上存储为s_d[v1][v2]s_d[v2][v1]s_d[5][2] = 4s_d[2][5] = 4,以及检索数据的相同.我也非常开放以获得更好的数据结构,但我更喜欢使用"is-a"关系实现只使用dict并预处理某些函数参数的实现.

python inheritance dictionary

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

即使在移动/重命名后,也可以在NTFS中唯一标识文件/文件夹

我没有找到一个备份(同步)程序,它做了我想要的,所以我正在考虑编写自己的.

我现在做了以下事情:它遍历源中的数据,并且每个文件的存档位设置或目标中不存在,将其复制到目标,覆盖可能存在的文件.完成后,它会检查目标中的所有文件(如果它存在于源中),如果不存在,则删除它.

问题是,如果我移动或重命名一个大文件夹,它首先会被复制到目标,即使它原则上已存在,只是有一个不同的路径.然后删除已经存在的文件夹.

除了不必要的复制之外,我经常遇到空间问题,因为我的备份驱动器不够大,无法保存原始数据两次.

有没有办法以编程方式识别此类移动/重命名的文件或文件夹,即通过NTFS ID或媒体上的物理位置或其他内容?这个问题有解决方案吗?

我不关心编程语言,但是对于使用Python,C++,C#,Java或Prolog执行此操作的提示表示赞赏.

directory backup synchronization ntfs file

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

Python函数使任意字符串成为有效的文件名

是否有内置函数从字符串中删除所有不能在Windows文件名中的字符或以某种方式替换它们?

例如function("Some:unicode\symbols")- >"Some-unicode-symbols"

python windows string filenames

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

仅使用列表推导构建列表,没有功能

特定

userplays = { "Alice"   : { "AC/DC" : 2,
                            "The Raconteurs" : 3,
                            "Mogwai" : 1
                          },
              "Bob"     : { "The XX" : 4,
                            "Lady Gaga" : 3,
                            "Mogwai" : 1,
                            "The Raconteurs" : 1
                          },
              "Charlie" : { "AC/DC" : 7,
                            "Lady Gaga" : 7
                          }
            }
Run Code Online (Sandbox Code Playgroud)

获取所有乐队的列表:

['Lady Gaga', 'Mogwai', 'AC/DC', 'The Raconteurs', 'The XX']
Run Code Online (Sandbox Code Playgroud)

我可以

list(set(flatten([ [ band 
                     for band 
                     in playcounts.keys() ] 
                   for playcounts 
                   in userplays.values() ] ) ) )
Run Code Online (Sandbox Code Playgroud)

哪个flatten来自Flatten(一个不规则的)列表列表,但有没有 …

python list-comprehension

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

Eclipse Neon Local Websphere无法启动

问题:尝试启动IBM Websphere服务器时,控制台视图通过显示以下消息显示服务器已成功启动:server ... open for e-business.但是,服务器视图中服务器的状态仍处于启动状态.只有在eclipse.ini中指定了Oracle JDK 8时才会出现症状.在eclipse.ini中指定IBM SDK 8时,可以正确显示服务器状态.在这两种情况下,都可以登录服务器管理控制台.

平台:Windows 7 Professional SP1

IDE:下面提到的vanilla Eclipse Neon 4.6.1 +插件

插件:用于Neon的IBM WebSphere Application Server传统V8.5x开发人员工具

服务器:IBM Websphere 8.5.5.9

详细配置文件和日志:

使用Oracle JDK 8时:

的eclipse.ini: -vm C:/Program Files/Java/jdk8/jre/bin/javaw.exe

Eclipse .log eclipse.buildId = 4.6.1.M20160907-1200 java.version = 1.8.0_102 java.vendor = Oracle Corporation BootLoader常量:OS = win32,ARCH = x86_64,WS = win32,NL = nl_NL框架参数:-product org.eclipse.epp.package.jee.product命令行参数:-os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.jee.product

使用IBM JDK 8时:

的eclipse.ini: -vm C:/Program Files (x86)/IBM/WebSphere/AppServer-85/java_1.8_64/bin/javaw.exe

Eclipse .log eclipse.buildId = 4.6.1.M20160907-1200 java.fullversion = JRE 1.8.0 …

java eclipse websphere eclipse-neon ibm-wdt

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

警告由于 ADL 导致丢失 std:: 前缀

当参数类型位于命名空间中时,可以省略sstd::的命名空间(通常是这种情况)。<algorithm>是否有任何警告或整齐的规则可以发现此类遗漏?

#include <vector>
#include <algorithm>

std::vector<int> v;
for_each(v.begin(), v.end(), [](auto){});
return 0;
Run Code Online (Sandbox Code Playgroud)

上面的示例使用最新的 clang 和 -Wall、-Wextra 和 -Wpedantic 编译,不会发出任何诊断信息:

https://godbolt.org/z/dTsKbbEKe

c++ compiler-warnings argument-dependent-lookup clang-tidy

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

无法通过类型别名访问嵌套类型

我在 Kotlin 中有一个数量/单位库,其中包含WeightDistance、等类Force。这些类继承自一个Quantity类,每个类都包含一个嵌套的枚举类Unit,其中包含有关每种数量类型的各自单位的信息。

作为一种物理上的奇怪现象,电动汽车的消耗(例如 kWh/100km)在技术上与力的量纲相同,因此该类Force.Unit包含NEWTONKILOWATTHOUR_PER_100_KILOMETERS

当然,我们用于FuelConsumption燃烧汽车和电动汽车的数量应该看起来相似,所以我创建了一个typealias ElectricConsumption = Force.

由于某种原因,我无法ElectricConsumption.Unit通过该类型别名访问内部类。这是极其不方便的。这是设计使然吗?为什么?有解决方法吗?

class A {
    enum class B { X }
}

typealias AA = A

fun main() {
   print(A.B.X)  // prints X
   print(AA.B.X) // Unresolved reference: B
}
Run Code Online (Sandbox Code Playgroud)

https://pl.kotl.in/wTuDs3Hgh

inner-classes kotlin

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

如何让 clangd 使用 C++20

当没有其他信息时,如何让 clangd 回退到 C++20?

这是在带有最新 LLVM 的 Arch Linux 上。这是通过 Emacs LSP 运行的,但这应该没有什么区别。

linux emacs llvm clangd

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

Mercurial,将工作副本中的更改提交到另一个分支

我忘记了将工作副本切换回正确的分支并进行了一些更改。

如何将当前更改(而不是当前分支中的所有其他更改)提交给原始分支?

mercurial branch working-copy

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

使用ERROR_ACCESS_DENIED删除每个API调用失败的文件夹

我创建了一个CreateDirectoryW我无法访问的文件夹.我用作nullptr安全描述符,但由于某种原因,它没有复制父文件夹的ACL,而是使文件夹不可访问.

我无法查看或更改所有者.takeown,icacls,SetNamedSecurityInfoW全部来自提升的进程或命令提示,失败ERROR_ACCESS_DENIED.

在尝试Linux live CD之前,我是否有机会在Windows(Shell或C++)中删除此文件夹,希望这些CD不关心ACL?

c++ winapi access-denied delete-file windows-10

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