【发布时间】:2017-02-08 12:22:58
【问题描述】:
我有包含密文的大文件。密码是这样连接的
QJFQFJDOVRVLHSVUJNHTZDGLDOVGSAYFKFPSAJSOEGXCDHCDDEWGTUUFOVDGQUJD
我的问题是如何拆分字母以便循环每个字母?
我正在尝试此代码,但收到此错误消息
num = (ord(symbol)-k) % 126
TypeError: ord() 预期长度为 1 的字符串,但找到了列表"
with open(file) as f:
translated = ''
for s in f:
symbol = s.split()
print(symbol)
num = (ord(symbol)-k) % 126
if num < 32:
num += 95
translated += chr(num)
print(translated)
在添加 .split() 函数之前,我收到了以下错误消息:
"TypeError: ord() 需要一个字符,但找到了长度为 6 的字符串"
使用此代码:
with open(file) as f:
translated = ''
for symbol in f:
print(symbol)
num = (ord(symbol)-k) % 126
if num < 32:
num += 95
translated += chr(num)
print(translated)
我的密码不包含空格
谢谢
【问题讨论】:
-
s是文件中的行。 . .您需要对其进行迭代,python 允许您直接迭代字符串(即for _ in s)
标签: python encryption split