使用变量作为python

时间:2017-06-26 16:57:57

标签: python string slice

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

new = message[halflength::]

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

  

TypeError:切片索引必须是整数或无或具有__index__方法

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

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

3 个答案:

答案 0 :(得分:3)

我认为问题是你在分割后获得halfLength的浮点类型,尝试将其转换为int,或者使用整数除法

halfLength = int(halfLength)

halfLength = len(message) // 2

答案 1 :(得分:2)

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

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

如果你通过这种方式获得长度,它将始终是一个整数,然后你可以用它来获取部分蜇伤。

答案 2 :(得分:0)

确保半长为Integer类型。 您可以使用“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)::]