比较列表中的字符串对象 - Python

时间:2017-10-01 04:18:31

标签: python

message = ["TS", "EE", "RE", "Z"]

所以我试图比较这个列表中的字符,并且在出现某些事情时有条件,例如如果列表中的值(例如“EE”)相同,它将返回true并附加“Q”分隔字母,使列表看起来像这样

 message = ["TS", "EQ", "ER" "EZ"]

所以我在没有循环的情况下正常尝试它但是当我循环时它表示字符串索引超出范围。

a = ''
a = message[1]
if a[0] == a[1]:
    print("True")
else:
    print("False")

循环播放时

for i in range(len(message)):
    a = ''
    a = message[i]
    if a[0] == a[1]:
        print("True")

我该怎么办?首先把它变成一个字符串并继续工作?

1 个答案:

答案 0 :(得分:1)

请注意,有一个元素" Z"在数组中(即消息[-1]),其中只有一个字符。

def getIndex(message):
  for i in range(len(message)):
    a = message[i]
    if a[0] == a[1]:
      return i
index = getIndex(message)
tmp = message[index][1]
message[index][1] = 'Q'
for x in range(index+1, len(message)):
  tmp1 = message[x][0] 
  if len(message[x])==1:
    message[x][0] = tmp
    message[x][1] = tmp1
    return
  else:
    message[x][0] = tmp
    tmp = message[x][1]
    message[x][1] = tmp1