提问人:Rokshana Ahmed 提问时间:10/31/2021 更新时间:10/31/2021 访问量:881
列表中字符串字符之间的比较 [重复]
Comparison between string characters within a list [duplicate]
问:
有一个 Python 列表,包含相同长度的字符串,如下所示:
input_list = [ "abc", "def", "ghi" ]
如何逐个字符比较所有字符串并区分它们?每个字符串必须比较另一个字符串一次。
list[0] 和 list[1]
list[0] 和 list[2]
list[1] 与 list[2]
比较示例:
"a" with "d"
"b" with "e"
"c" with "f"
此列表中字符串类型元素的数量可能会更改,但字符串的长度将始终相同。
我一直在努力寻找一种方法来做到这一点,要么将每个元素变成一个子列表,这样我就可以比较它们,但比较总是会在循环中给我带来错误,例如“索引超出范围”。
我还尝试使用字典:
for i in range(len(list1)):
n_dict["Player%s" %i] = list(list1[I])
这将为我提供以下输出:
{'Player0': ['a', 'b', 'c'],
'Player1': ['d', 'e', 'f'],
'Player2': ['g', 'h', 'i']}
但话又说回来,循环的比较更加复杂。我还尝试简单地使用列表索引,例如
for i in range(len(list1):
for j in range(len(list1):
if ord(list[i][j]) - ord(list[i][j]) < k:
player0 += 1
else:
player1 +=1
但索引总是超出范围。有人可以帮我吗?
答:
0赞
PyotrVanNostrand
10/31/2021
#1
l = ["abc","def","abc","def","abc"]
i1 = 0
i2 = 1
for i in l[:-1]:
for j in l[i2:]:
while len(i) > i1:
print(i[i1]==j[i1])
i1 += 1
i1 = 0
i2 += 1
你可以逐个字符比较字符串,但不明白,你说的区别是什么意思?
评论