如何在Python中将True切换为False

NDK*_*DKC 6 python boolean

我需要执行什么操作才能始终获得False值变为True或获得True值变为False?换句话说,如何切换给定变量的布尔值?

    new_dict = {}
    for i in range(1, 101):
        new_dict[i] = False

    i = 2
    while i < 101:
        for x in range(1, 101):
            if new_dict[x] % i == 0:
                a = new_dict[x]
                new_dict[x] = not a
        i += 1
    for a in new_dict:
        print 'Light #%d --> %r' % (a, new_dict[a])
Run Code Online (Sandbox Code Playgroud)

下面的输出仅为True。据此,我了解到由于某种原因我所做的并不是将其他所有值都更改为False。为什么会这样呢?

有谁知道为什么吗?

    Light #1 --> True
    Light #2 --> True
    Light #3 --> True
    Light #4 --> True
    Light #5 --> True
    Light #6 --> True
    Light #7 --> True
    Light #8 --> True
    Light #9 --> True
    Light #10 --> True
    Light #11 --> True
    Light #12 --> True
    Light #13 --> True
    Light #14 --> True
    Light #15 --> True
    Light #16 --> True
    Light #17 --> True
    Light #18 --> True
    Light #19 --> True
    Light #20 --> True
    Light #21 --> True
    Light #22 --> True
    Light #23 --> True
    Light #24 --> True
    Light #25 --> True
    Light #26 --> True
    Light #27 --> True
    Light #28 --> True
    Light #29 --> True
    Light #30 --> True
    Light #31 --> True
    Light #32 --> True
    Light #33 --> True
    Light #34 --> True
    Light #35 --> True
    Light #36 --> True
    Light #37 --> True
    Light #38 --> True
    Light #39 --> True
    Light #40 --> True
    Light #41 --> True
    Light #42 --> True
    Light #43 --> True
    Light #44 --> True
    Light #45 --> True
    Light #46 --> True
    Light #47 --> True
    Light #48 --> True
    Light #49 --> True
    Light #50 --> True
    Light #51 --> True
    Light #52 --> True
    Light #53 --> True
    Light #54 --> True
    Light #55 --> True
    Light #56 --> True
    Light #57 --> True
    Light #58 --> True
    Light #59 --> True
    Light #60 --> True
    Light #61 --> True
    Light #62 --> True
    Light #63 --> True
    Light #64 --> True
    Light #65 --> True
    Light #66 --> True
    Light #67 --> True
    Light #68 --> True
    Light #69 --> True
    Light #70 --> True
    Light #71 --> True
    Light #72 --> True
    Light #73 --> True
    Light #74 --> True
    Light #75 --> True
    Light #76 --> True
    Light #77 --> True
    Light #78 --> True
    Light #79 --> True
    Light #80 --> True
    Light #81 --> True
    Light #82 --> True
    Light #83 --> True
    Light #84 --> True
    Light #85 --> True
    Light #86 --> True
    Light #87 --> True
    Light #88 --> True
    Light #89 --> True
    Light #90 --> True
    Light #91 --> True
    Light #92 --> True
    Light #93 --> True
    Light #94 --> True
    Light #95 --> True
    Light #96 --> True
    Light #97 --> True
    Light #98 --> True
    Light #99 --> True
    Light #100 --> True
Run Code Online (Sandbox Code Playgroud)

这里的问题如何在Python中获得布尔值的相反值(取反)?这里是python如何“取反”值:如果true返回false,如果false返回true似乎是相同的,但就我而言,这个简单的概念根本无法正常工作...

谢谢,我非常感谢所有帮助人员!!!

kch*_*son 7

假设为变量myBool,则可以使用not关键字进行设置。

myBool = True
print(myBool)
myBool = not myBool
print(myBool)
Run Code Online (Sandbox Code Playgroud)

结果是:

True
False
Run Code Online (Sandbox Code Playgroud)