使用变量作为python的切片指数



对于我正在学习如何切成整数的课程。在下面的代码中,变量halflength等于变量message的长度的一半。

new = message[halflength::]

halflength等于整数,但是每当我运行此代码时,我都会得到此错误:

typeError:切片索引必须是整数或无 __index__方法

基本上,我需要尝试创建一个等于原始字符串的后半部分的新字符串。

示例:原始字符串1234将产生34作为新字符串。

我认为问题是您在分区后获得半长度的浮点类型,尝试将其施放给int,或使用整数除法

halfLength = int(halfLength)

halfLength = len(message) // 2

做您想做的事情尝试这样的事情:

halfLength=len(message)//2
newMessage=message[halfLength::]

如果您以这种方式获得长度,它将始终是一个整数,然后您可以使用它来获取刺的一部分。

确保半长度为类型整数。您可以使用" isInstance"方法来验证。

# python
 Python 2.7.5 (default, Aug  2 2016, 04:20:16 
 >>> halflength = "4"
 >>> isinstance(halflength,int)`
 False`
 >>> halflength=4
 >>> isinstance(halflength,int)
 True
 >>>

尝试以下操作:

message[int(halflength)::]

最新更新