因此,我尝试调用已编码消息的长度,然后将该长度除以3(每3个字符代表一个字母)。这是消息:
10311132-10710510810832-121111117114115101108102
破折号设置为直接放在空格或字母a,b或c之后(因为ord函数将这些字符转换为仅2位数字的值,并且程序每个字母需要3位数字)。我有以下代码:
message = (10311132-10710510810832-121111117114115101108102)
message = str(message)
length = len(message)
print(length)
即使字符串为48个字符,代码也返回25。为什么会这样,我该如何解决?
答案 0 :(得分:3)
因为您已将message
初始化为一个整数。您可以通过在其周围加上引号来解决此问题:
message = ('10311132-10710510810832-121111117114115101108102')
此刻,将消息转换为字符串之后,将其执行减号操作的 之后转换为字符串。例如:
>>> message = (10311132-10710510810832-121111117114115101108102)
>>> message
-121111117124825601607802
作为旁注,作业中的方括号是不必要的。您可以这样做:
message = '10311132-10710510810832-121111117114115101108102'
答案 1 :(得分:1)
在第一行
view.window!.rootViewController = destination
已计算出右侧表达式并将其存储为-121111117124825601607802,它表示为字符串,长度为25个字符。