---
# System prepended metadata

title: HW_set
tags: [homework]

---

# HW_set
###### tags: `homework`
```python=
setA = {'コンピューター概論', '国語', 'プログラミング', '物理', '微積分A'}
setB = {'国語', 'プログラミング', '微積分B', '物理', '数学', '電子回路'}
# (1)
print("生徒A: {}".format(setA))
print("生徒B: {}".format(setB))

# (2)
setC = set()
for i in setA:
    setC.add(i)
setC &= setB
print("共同で選択した授業: {}".format(setC))

# (3)
setC = set()
setC = setA ^ setB
print("別々で選択した授業: {}".format(setC))

# (4)
setD = set()
for i in setA:
    setD.add(i)
setD.remove("物理")
setD.remove("微積分A")
setC = set()
for i in setD:
    setC.add(i)
setC &= setB
print("共同で選択した授業: {}".format(setC))

# (5)
setF = setB.copy()
setF.add("コンピューター概論")
setE = setF ^ setD #setA から"物理"と"微積分A"を消したsetDと比較する
print("別々で選択した授業: {}".format(setE))

# (6)
setC = {"中国語基礎","中日翻訳","中国歴史概説","数学","中国語演習","プログラミング"}
setA &= setB
setA &= setC
print("共同で選択した授業: {}".format(setA))

```
:::info
* set copyしたいの場合:
    copyのfunctionを使用してください

## Example
```python=
setA = {1, 2, 3}
setB = setA.copy()
print(setA)
print(setB)
```
* オペレーターは複数の操作を実行できます
## Example
```python=
setA = {1, 2, 3}
setB = {3, 4, 5}
setC = {3, 9, 7}
setD = {0, 8, 3}
print(setA & setB & setC & setD)
```
                                    by こう先生
:::