python sequence item 0_python函数中的序列项0错误

这是一个函数体,它接受一个方向数组,如["NORTH", "SOUTH", "SOUTH", "EAST", "WEST", "NORTH", "WEST"]并将其缩短,因此相邻的相反方向将被删除。这个示例数组应该只返回["WEST"]。在

问题是代码在大多数情况下都能工作,但有时它会抛出一个TypeError: sequence item 0: expected str instance, int found。我看不出引起这个问题的确切原因,也不知道如何解决它。在for index in range(len(arr)):

if arr[index]=="NORTH": arr[index]=1

if arr[index]=="SOUTH":arr[index]=-1

if arr[index]=="EAST": arr[index]=2

if arr[index]=="WEST": arr[index]=-2

def nulandrem(array):

count=len(array)

for index1 in range(0,count-1):

if array[index1]+array[index1+1]==0:

array[index1]=0

array[index1+1]=0

newarr=[]

for item in array:

if item!=0:

newarr.append(item)

return newarr

arr=nulandrem(arr)

while arr!=nulandrem(arr):

arr=nulandrem(arr)

for index3 in range(len(arr)):

if arr[index3]==1: arr[index3]="NORTH"

if arr[index3]==-1: arr[index3]="SOUTH"

if arr[index3]==2: arr[index3]="EAST"

if arr[index3]==-2: arr[index3]="WEST"

return arr

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值