Reputation: 141
I'm trying to write a code that takes a Boolean value and swaps it for the opposite in a list. So let's say I start out with 100 Falses and want to change every one to True. Then I want to change every other one to False, starting at the second one. I hope that makes sense.
an example would be:
>>>False False False False False False False False False False
>>>True True True True True True True True True True
>>>True False True False True False True False True False
>>>True False False False True True True False False True
Upvotes: 1
Views: 1268
Reputation: 414
Switch every other element to its opposite:
my_list = [False, False, False, False, False, False, False]
for index in range(0, len(my_list), 2):
my_list[index] = not my_list[index]
Upvotes: 0
Reputation: 368944
Using list comprehension and slicing:
>>> lst = [False] * 10
>>> lst
[False, False, False, False, False, False, False, False, False, False]
>>> lst[:] = [not x for x in lst]
>>> lst
[True, True, True, True, True, True, True, True, True, True]
>>> lst[1::2] = [not x for x in lst[1::2]]
>>> lst
[True, False, True, False, True, False, True, False, True, False]
Upvotes: 1