【发布时间】:2021-12-15 05:47:02
【问题描述】:
有一个 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
但总是索引超出范围。有人可以帮帮我吗?
【问题讨论】:
-
你已经用不同的用户名问过同样的问题:stackoverflow.com/questions/69781124/…
-
您究竟想从这些比较中获得什么?如果只是看字符串是否相等,您可以只比较整个字符串。如果您正在考虑计算字符之间的“距离”,那么您应该研究 zip() 和 abs() 函数
-
请澄清您的具体问题或提供其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。