【发布时间】:2013-02-14 01:19:15
【问题描述】:
我需要将此函数在 C 中转换为 Python:
void myencrypt(char password[],int mkey)
{
unsigned int i;
for(i=0;i<strlen(password);++i)
{
password[i] = password[i] - mkey;
}
}
我尝试了这个,但失败了......
def myencrypt(password, mkey):
i = 0
newpass = []
for i in range(len(password)):
newpass[i] = ord(password[i]) - mkey;
return newpass
有什么帮助吗?
【问题讨论】:
-
使用追加。但是为什么首先要从 c 转换为 python 呢?只需保留您的 c 代码并使用 cython 包装
-
您是否有理由不使用
chr将数字转换回字符? (在 C 语言中,这不是必需的,因为'a'和97是相同的值。但在 Python 中,就像您需要ord将一个转换为另一个一样,您需要chr转换另一个方式。)
标签: python c linux encryption