正確答案是:C: 集合可變,凍集合不可變。
### 分析:
- **集合(set)**:
- **可變性**:集合是可變的數(shù)據(jù)結(jié)構(gòu),這意味著你可以在集合創(chuàng)建后,添加或刪除其中的元素。
- **操作**:常見的操作包括 `.add()` 方法來添加元素,`.remove()` 或 `.discard()` 方法來刪除元素。
- **凍集合(frozenset)**:
- **不可變性**:凍集合是集合的一種不可變版本。一旦創(chuàng)建,就不能再對其進(jìn)行任何修改(比如添加或刪除元素)。
- **用途**:由于不可變性,凍集合可以用作字典的鍵或者存儲在其他集合中。
### 表格對比:
| 特性 | 集合(set) | 凍集合(frozenset) |
|-----------|---------------|---------------------|
| 可變性 | 可變 | 不可變 |
| 元素添加 | 支持 `.add()` | 不支持 |
| 元素刪除 | 支持 `.remove()` / `.discard()` | 不支持 |
| 用作字典鍵| 否 | 是 |
| 存儲在集合中 | 否 | 是 |
這種設(shè)計的主要目的在于滿足不同應(yīng)用場景下的需求:當(dāng)需要一個動態(tài)的、可以修改的集合時使用 `set`,而在需要保證集合不被篡改的場景下(如字典的鍵),則使用 `frozenset`。