已知 x = {1: 3, 2: 1, 3: 1} 和 y = {1, 3, 4},那么表达式 x.values() - y 的值为
时间: 2024-05-13 13:16:24 浏览: 139
表达式求值
这个表达式会抛出一个 TypeError 异常,因为字典的 values() 方法返回的是一个字典视图对象,而不是一个集合。如果想要计算 x 中所有值的集合与 y 的差集,可以将 x 的值集合化后再做差集运算,代码如下:
```python
x = {1: 3, 2: 1, 3: 1}
y = {1, 3, 4}
diff = set(x.values()) - y
print(diff) # {1}
```
其中,set(x.values()) 将字典 x 中的所有值转化为集合,即 {3, 1, 1},再用集合的差集运算符 - 求出与 y 的差集,即 {1}。
阅读全文