我想在GAS中哈希(md5)一些txt字符串,并且有问题,可能是 错误的行尾。 示例:
def f(z, l):
x = (z['Group'] == l) | (z.index == z.index[-1])
cs = z['data'].cumsum()
dx = cs - cs.where(x, np.nan).ffill().shift(1).fillna(0)
zz = z[x].drop('data', 1).assign(Group=l).join(dx)
zz['purchase_date'] = pd.to_datetime(zz['purchase_date'])
zz.at[zz.index[-1], 'purchase_date'] = zz.at[zz.index[-2], 'purchase_date'] + pd.Timedelta('4d')
return zz
正确的哈希76ce9f441de2ed5de337d391ad4516b7
使用GAS,我得到了错误的哈希值:e8230113fbba92427c1c41cf34a80c13
test
test
答案 0 :(得分:0)
@Ameen已经提到过,您正在检查不同的字符串
function test(){
var s1 = 'test\ntest';
var s2 = 'test\r\ntest';
Logger.log(s1.MD5() === '76ce9f441de2ed5de337d391ad4516b7');
Logger.log(s2.MD5() === '76ce9f441de2ed5de337d391ad4516b7');
}
[19-03-22 18:03:11:441 MSK] false [19-03-22 18:03:11:442 MSK] true
对于非Unix平台,包含“ \ r \ n”的字符串,对于Unix平台,包含“ \ n”的字符串。
似乎您正在Windows下工作。