问答详情
源自:8-5 Python 操作set的其他方法

为什么输出结果是else后面的,s1.isdisjoint(s2)=='False',if语句为啥不成立

http://img2.mukewang.com/62047f8e0001b54706400312.jpg

s1 = set([1, 2, 3, 4, 5])

s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9])

s3=set()

s4=set()

print(s1.isdisjoint(s2))

a='False'

if s1.isdisjoint(s2)==a:

    s3=s2-s1

    L=list(s3)

    T=tuple(s3)

    print(L,T)

else:

    print(s4)


提问者:x慕杨人1437 2022-02-10 11:00

个回答

  • 慕丝5528068
    2022-05-28 10:00:51

    isdisjoint的结果是True或者False,是不加引号''的,所以加了引号''就不是isdisjoint的输出结果,肯定不会进入if的。

  • 慕神7009732
    2022-04-26 16:28:40

    s1 = set([1, 2, 3, 4, 5])

    s2 = set([1, 2, 3, 4, 5, 6, 7, 8, 9])

    s3=set()

    s4=set()

    print(s1.isdisjoint(s2))

    a=False

    if s1.isdisjoint(s2)==a:

        s3=s2-s1

        L=list(s3)

        T=tuple(s3)

        print(L,T)

    else:

        print(s4)

    a=False 不要带引号,带了引号是表示字符串,不是布尔类型,所以不成立