我试图在python中比较2个字符串,但失败了

时间:2019-10-13 04:18:47

标签: python python-3.x

所以我不想比较iist和变量中的字符串,但是输出却是假的

ive used and and ==然后我认为是因为列表中的元素不是字符串,所以我尝试使用str()func将其转换为str,但是它不起作用

        obj='ana'
        # haha[22][0] is 'ana'
        obj1=str(haha[22][0])
        if obj is obj1:
            print('true')
        else:
            print('false')

        print(obj1)

首先我尝试将==更改为is,但是它不起作用,然后我虽然需要将列表中的元素更改为str(),但它也确实起作用了

我想比较一下,谢谢您的回答

1 个答案:

答案 0 :(得分:0)

几乎可以肯定这与列表中存储的内容有关。同样,通常==用于比较值,“ is”用于比较标识,因此在这种情况下,应使用==。

最后一次打印输出什么?

'ana'=='ana'将始终返回true,因此在没有指定元素设置位置的情况下,没有足够的信息来确定问题所在。

如果打印出“ ana”,则可能值得打印每个要比较的对象的哈希函数。

我想写这句话作为评论,但我没有足够的代表发表评论:/