小编zwo*_*wol的帖子

配置Git以接受特定https远程的特定自签名服务器证书

我正在进行的项目的系统管理员已经确定SSH"太麻烦"了; 相反,他已将Git设置为可通过https://URL(以及用户名/密码身份验证)访问.此URL的服务器提供自签名证书,因此他建议所有人关闭证书验证.这并不是一个好的设置,安全方面.

是否有可能告诉Git对于远程X(或者更好的是,任何存储库中的任何远程开头都是https://$SERVERNAME/),它是接受特定证书,接受该证书?基本上重复了SSH的服务器密钥行为.

git ssl-certificate

148
推荐指数
3
解决办法
18万
查看次数

笛卡尔积产品数据框

我有三个或更多的自变量表示为R向量,如下所示:

A <- c(1,2,3)
B <- factor(c('x','y'))
C <- c(0.1,0.5)
Run Code Online (Sandbox Code Playgroud)

我想采用所有这些产品的笛卡尔积,并将结果放入数据框中,如下所示:

A B C
1 x 0.1
1 x 0.5
1 y 0.1
1 y 0.5
2 x 0.1
2 x 0.5
2 y 0.1
2 y 0.5
3 x 0.1
3 x 0.5
3 y 0.1
3 y 0.5
Run Code Online (Sandbox Code Playgroud)

我可以通过手动写出调用来执行此操作rep:

d <- data.frame(A = rep(A, times=length(B)*length(C)),
                B = rep(B, times=length(A), each=length(C)),
                C = rep(C, each=length(A)*length(B))
Run Code Online (Sandbox Code Playgroud)

但是必须有更优雅的方式去做,是吗? productitertools部分工作中,但我找不到任何方法来吸收迭代器的输出并将其放入数据框中.有什么建议?

ps此计算的下一步看起来像

d$D <- f(d$A, d$B, d$C)
Run Code Online (Sandbox Code Playgroud)

所以如果你知道一次做两个步骤的方法,这也会有所帮助.

r dataframe

58
推荐指数
5
解决办法
4万
查看次数

chr()等效返回一个字节对象,在py3k中

蟒2.x的有chr(),其在0-255范围内,以一个字节字符串转换多个具有与该数字值的一个字符,并且unichr(),这在范围0-0x10FFFF许多具有一个字符与Unicode的转换为Unicode字符串码点.Python 3.x替换unichr()chr(),符合其"Unicode字符串是默认的"策略,但我找不到任何与旧的完全相同的东西chr().在2to3(2.6)工具留下chr电话独自一人,这是不正确的,一般:(

(这用于解析和序列化以8位字节显式定义的文件格式.)

python unicode python-3.x

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

防止MSYS'bash'杀死捕获^ C的进程

我有一个控制台模式的Windows应用程序(从Unix移植),最初设计用于在收到^C(Unix SIGINT)时进行干净退出.在这种情况下,干净的出口涉及等待,可能相当长的时间,以便关闭远程网络连接.(我知道这不是正常行为,^C但我无法改变它.)该程序是单线程的.

我可以捕获^C与任一signal(SIGINT)(如Unix下)或用SetConsoleCtrlHandler.当程序在CMD.EXE下运行时,可以正常工作.但是,如果我使用MSYS附带的"bash"shell(我使用MinGW环境来构建程序,因为这允许我重用Unix makefile),那么程序会被强制终止一些随机,短时间(小于之后100毫秒)^C.这是不可接受的,因为正如我所提到的,程序需要等待远程网络连接关闭.

人们很可能想要在MSYS bash下运行这个程序.此外,这种效果打破了测试套件.我无法找到任何方法来解决问题,无论是从程序内(理想)还是通过shell上的设置(可接受).谁能推荐任何东西?

c windows portability windows-console

33
推荐指数
2
解决办法
3425
查看次数

解释数据*结构*和数据*类型之间的区别*

试图回答复合数据类型和数据结构之间的区别是什么?我意识到虽然我清楚地知道数据类型什么,以及它与数据结构的不同之处,但我无法将其区分为单词.如果您正在教授入门CS课程,您会如何解释其中的差异?

language-agnostic theory data-structures

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

哈希指针值

有时您需要使用指针的哈希函数; 不是指针指向的对象,而是指针本身.很多时候,人们只是将指针值作为整数,将一些高位切断以使其适合,可能会在底部移出已知零位.事实是,指针值不一定在代码空间中很好地分布; 事实上,如果你的分配器正在完成它的工作,那么它们很可能会聚集在一起.

所以,我的问题是,是否有人开发了对此有益的哈希函数?取一个32位或64位的值,可能在某处获得12位熵,并将其均匀地分布在32位数字空间中.

algorithm hash pointers

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

找到64位数的位置

我试图在64位数字中找到两个1的位置.在这种情况下,那些位于第0和第63位置.这里的代码返回0和32,这只是对齐的一半.为什么这不起作用?

#include<stdio.h>
void main()
{
unsigned long long number=576460752303423489;
int i;
for (i=0; i<64; i++)
    {
    if ((number & (1 << i))==1)
        {
        printf("%d  ",i);

        }   
    }
}
Run Code Online (Sandbox Code Playgroud)

c

26
推荐指数
2
解决办法
1082
查看次数

在Windows上将^ C发送到Python子进程对象

我有一个测试工具(用Python编写),需要通过发送来关闭被测程序(用C语言编写)^C.在Unix上,

proc.send_signal(signal.SIGINT)
Run Code Online (Sandbox Code Playgroud)

工作得很好.在Windows上,会抛出错误("不支持信号2"或类似的东西).我正在使用Python 2.7 for Windows,所以我觉得我应该能够做到

proc.send_signal(signal.CTRL_C_EVENT)
Run Code Online (Sandbox Code Playgroud)

但这根本不起作用.我需要做什么?这是创建子进程的代码:

# Windows needs an extra argument passed to subprocess.Popen,
# but the constant isn't defined on Unix.
try: kwargs['creationflags'] = subprocess.CREATE_NEW_PROCESS_GROUP
except AttributeError: pass
proc = subprocess.Popen(argv,
                        stdin=open(os.path.devnull, "r"),
                        stdout=subprocess.PIPE,
                        stderr=subprocess.PIPE,
                        **kwargs)
Run Code Online (Sandbox Code Playgroud)

python windows subprocess

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

算法:识别一组对象中的成对冲突,只给出"此列表中存在冲突"oracle

我有一组(无序)对象.我还有一个oracle,它接受一个有序的对象列表,如果该列表中至少有一个有序冲突,则返回true,否则返回false.有序冲突是一对有序对象(A,B),因此oracle为任何输入列表[...,A,...,B,...]返回true.(A,B)是有序冲突并不一定意味着(B,A)是有序冲突.

我想找出所有无序集内的冲突:即找出所有对{X,Y},使得无论是(X,Y)或(Y,X)如上述所定义的有序冲突.oracle很慢(每次调用几十到几百毫秒)所以最小化oracle调用的数量是必不可少的; 显而易见的天真算法(将每个可能的有序集合元素集合提供给oracle; O(n²)调用)是不可接受的.有数百个集合元素,预计总体上不到10个冲突.

这是我已经得到的:如果oracle为两元素列表返回true,那么显然列表中的元素构成冲突.如果oracle为任何列表返回false ,则该列表中没有有序冲突; 如果oracle为列表L和列表L的反转返回false,则L中没有无序冲突.因此,与以下不完全不同的分而治之算法应该起作用:

Put all the set elements in a list L (choose any convenient order).
Invoke the oracle on L.
  If the oracle returns false, invoke the oracle on rev(L).
    If the oracle again returns false, there are no unordered conflicts within L.

# At this point the oracle has returned true for either L or rev(L).
If L …
Run Code Online (Sandbox Code Playgroud)

algorithm

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

在python 3中继承文件对象(以扩展打开和关闭操作)

假设我想在内部openclose时间使用额外的操作来扩展内置文件抽象.在Python 2.7中,这适用于:

class ExtFile(file):
    def __init__(self, *args):
        file.__init__(self, *args)
        # extra stuff here

    def close(self):
        file.close(self)
        # extra stuff here
Run Code Online (Sandbox Code Playgroud)

现在我正在考虑将程序更新为Python 3,其中open是一个工厂函数,它可能会从io模块中返回任何几个不同类的实例,具体取决于它的调用方式.我原则上可以将它们全部子类化,但这很乏味,而且我必须重新实现这样open做的调度.(在Python 3中,二进制文件和文本文件之间的区别比2.x更重要,我需要两者.)这些对象将被传递给库代码,这些代码可能与它们做任何事情,所以这些成语制作一个"类文件"的duck-typed类来包装返回值open和转发必要的方法将是最冗长的.

任何人都可以建议3.x方法,除了显示的2.x代码之外,尽可能少的额外样板吗?

python python-3.x

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