python - 如何假名化和假名化回来
问题描述
我想匿名化我的数据框。我有名字和学生证。我想把这个名字化名,这样它就无法识别了。我找到了gocept.pseudonymize 库。我找到的图书馆就是这样做的。只有我想输入假名值,然后我应该收到我的字符串。
Student Studendid Student Studendid Student Studendid
0 Stud1 1 0 ah274as 1 0 Stud1 1
1 Stud2 2 1 ah474as 2 1 Stud2 2
2 Stud3 3 2 ah454as 3 2 Stud3 3
3 Stud4 4 3 48sdfds 4 3 Stud4 4
4 Stud5 5 -> 4 dash241 5 -> 4 Stud5 5
5 Stud6 6 5 asda212 6 5 Stud6 6
6 Stud7 7 6 askdkj2 7 6 Stud7 7
7 Stud8 8 7 kadhh23 8 7 Stud8 8
8 Stud9 9 8 asdhb27 9 8 Stud9 9
你知道可以做到这一点的图书馆吗?还是一种方法?
import gocept.pseudonymize
gocept.pseudonymize.text('Here is my little text', 'secret')
[OUT] 'u7YJWz RqdYkfNUFgZii2Y'
# What I want
gocept.pseudonymize.getString('u7YJWz RqdYkfNUFgZii2Y')
[OUT] 'Here is my little text'
解决方案
这是一个简单的字符串编码示例:
sentence = 'Here is my little text'
encoded = ""
decoded = ""
shift = 8 # change this to get different results
for c in sentence:
i = ord(c)
if (i >= 48 and i < 58):
continue
elif (i >= 65 and i < 91):
i = ((i - 65 + shift) % 26) + 65
elif (i >= 97 and i < 123):
i = ((i - 97 + shift) % 26) + 97
encoded += chr(i)
print(encoded) # => Pmzm qa ug tqbbtm bmfb
for c in encoded:
i = ord(c)
if (i >= 48 and i < 58):
continue
elif (i >= 65 and i < 91):
i = ((i - 65 - shift) % 26) + 65
elif (i >= 97 and i < 123):
i = ((i - 97 - shift) % 26) + 97
decoded += chr(i)
print(decoded) # => Here is my little text
推荐阅读
- highcharts - 需要在单击范围选择器按钮时调用具有最小和最大 X 值的 API
- laravel - Laravel, Vue:Object(…) 不是函数
- laravel - Laravel8x:不要使用工厂创建带有 poll_id 的 FK
- javascript - 按键对对象数组进行分组,其中键是一个数组
- robotframework - 如何在机器人框架中传递确切的字符串作为参数
- android - 在浏览器中工作时,模拟器中的 ERR_NAME_NOT_RESOLVED 错误
- c - ubuntu 中使用 Visual Studio 代码的 C 程序
- reactjs - React Recharts - 动态折线图只显示一条线的数据
- linux - 两点后的正则表达式
- java - 升级到 Spring boot 2.3.5.RELEASE 后的 Cassandra 身份验证问题