考试报名
考试报名
考试内容
考试大纲
在线客服
返回顶部

备考刷题,请到

CDA认证小程序

关于集合Set,说法错误的是?
A. A、集合中可以包含数字和字符串
B. B、集合中可以是任何形式的数据类型
C. C、集合中不能包含字典
D. D、集合中不能包含列表
上一题
下一题
收藏
点赞
评论
题目解析
题目评论(0)

在 Python 中,集合(`set`)是一种无序的数据结构,具有以下特性:

1. **集合中可以包含数字和字符串** - 这是正确的。集合可以包含任何不可变的数据类型,包括数字和字符串。

2. **集合中可以是任何形式的数据类型** - 这是不准确的。集合中的元素必须是可散列的(hashable),因此并不是所有的数据类型都可以直接放入集合中。

3. **集合中不能包含字典** - 这是正确的。字典是可变类型,因此不能作为集合的元素。

4. **集合中不能包含列表** - 这也是正确的。列表是可变类型,因此也不能作为集合的元素。

### 正确答案是:B

### 专业分析

| 选项 | 描述 | 是否正确 |
|------|------|----------|
| A | 集合可包含数字和字符串 | 正确 |
| B | 集合可以是任何形式的数据类型 | 错误 |
| C | 集合中不能包含字典 | 正确 |
| D | 集合中不能包含列表 | 正确 |

#### 详细说明:

- **不变性要求(Immutable Requirement)**: 集合的元素必须是不可变的,这意味着它们需要是可散列的。可散列对象的例子包括整数、浮点数、字符串和元组(假如其中的元素也是可散列的)。因此,像列表和字典这样的可变对象不能直接用作集合的元素。

- **数据类型限制**: 当集合尝试存储可变类型时,会引发`TypeError`,因为这些类型的对象不能保证散列值的稳定性,这对于集合这种依赖哈希表的数据结构来说是必须的。

通过上述分析可以清晰地看到,选项 B 是错误的,故此为正确答案。