小编Tin*_*awa的帖子

如何检查列表中字符串中的 2 个值是否不同

超级简单的问题。假设我在 Python 中有这个列表:

variables = ['A1,A1','A2,B2','A1,C2','B3,B3','C4,C4']
Run Code Online (Sandbox Code Playgroud)

现在,我只需要保留逗号前后值不同的那些项目。在这种情况下,输出将是:

result = ['A2,B2','A1,C2']
Run Code Online (Sandbox Code Playgroud)

我已经有了一个“不那么优雅”的解决方案:

new_list = []
for i in range(len(variables)):
    j = variables[i].split(",")
    if j[0] != j[1].replace(" ", ""):
        z = "{},{}".format(j[0], j[1])
        new_list.append(z)
Run Code Online (Sandbox Code Playgroud)

注意:我必须添加replace以删除空格,但这并不重要......

有没有另一种(更好的)方法来做到这一点?也许正则表达式

注意二:我也尝试使用列表理解:

lista_differents = ["{},{}".format(j[0], j[1]) for i in range(len(variables)) if j[0] != j[1].replace(" ", "")] 
Run Code Online (Sandbox Code Playgroud)

但我还是要弄清楚如何添加该行 j = variables[i].split(",")

有任何想法吗?

python list-comprehension list

2
推荐指数
1
解决办法
136
查看次数

标签 统计

list ×1

list-comprehension ×1

python ×1