Python Len函数未返回字符串的正确值
所以我试着调用一个编码消息的长度,然后将该长度除以3,每3个字符代表一个字母。信息如下:Python Len函数未返回字符串的正确值,python,string-length,Python,String Length,所以我试着调用一个编码消息的长度,然后将该长度除以3,每3个字符代表一个字母。信息如下: 10311132-10710510810832-121111117114115101108102 破折号设置为直接放在空格或字母a、b或c之后,因为ord函数仅将这些字符转换为2位值,并且程序要求每个字母有3位数字。我有以下代码: message = (10311132-10710510810832-121111117114115101108102) message = str(message) leng
10311132-10710510810832-121111117114115101108102
破折号设置为直接放在空格或字母a、b或c之后,因为ord函数仅将这些字符转换为2位值,并且程序要求每个字母有3位数字。我有以下代码:
message = (10311132-10710510810832-121111117114115101108102)
message = str(message)
length = len(message)
print(length)
即使字符串是48个字符,代码也会返回25个字符。这是为什么?我如何修复它?因为您已将消息初始化为int。您可以通过在其周围加引号来修复此问题:
message = ('10311132-10710510810832-121111117114115101108102')
此时,将消息转换为字符串之后,将在执行减号操作后对其进行转换。例如:
>>> message = (10311132-10710510810832-121111117114115101108102)
>>> message
-121111117124825601607802
作为旁注,作业周围的括号是不必要的。您只需执行以下操作:
message = '10311132-10710510810832-121111117114115101108102'
在第一行
消息=10311132-10710510810832-121111114115101108102
右侧的表达式已计算并存储为-121111117124825601607802,表示为字符串,长度为25个字符。不幸的是,我无法将该值放入“”,因为该数字由变量确定。所以你输入一个短语或消息,它用ord函数对其进行编码。我不明白你在这里得到的是什么。你能分享完整的代码来重现你的错误吗?