# Python tuple subtraction

Python doesn't support tuple subtraction and `-`

operand.

```
a = (5, 6, 7)
b = (5, 6)
c = a - b
# TypeError: unsupported operand type(s) for -: 'tuple' and 'tuple'
```

But you can add tuples using `+`

operator. The following is the simplest way to subtract a tuple by another tuple.

```
a = (1, 2, 3, 4)
b = (1, 2)
c = ()
for i in a:
if i not in b:
c = c + (i,)
print(c) # (3, 4)
```

The trailing comma is basically optional but needed to append each value to the tuple in this case. A tuple with only one element is not a tuple but simply a value.

If tuple `b`

has elements tuple `a`

doesn't have, this code works well and the result is like the difference of sets.

```
a = (1, 2, 3, 4)
b = (1, 2, 5)
c = ()
for i in a:
if i not in b:
c = c + (i,)
print(c) # (3, 4)
```

5 is in `b`

but not in `c`

.

## Comments

Powered by Markdown