python - Python 3.7+ 中 {'some_string' } 和 set('some string) 作为关键字参数之间的区别

标签 python set

我正在向一组学生提供作业反馈,其中许多学生试图通过在大括号中传递字符串来将集合作为关键字参数传递到函数中。 当我打印 (type({'some_string'})) 时,我得到 class = set.但是当我传递与 set('some_string') 相同的参数时,我得到不同的输出。

例如

some_random_function (kwarg = {'some_string'})

不同
some_random_funtion(kwarg = set('some_string'))

谁能帮我理解为什么?

最佳答案

这是因为 {'some_string'}set('some_string')

a= set('some_string')
# {'_', 'e', 'g', 'i', 'm', 'n', 'o', 'r', 's', 't'}

a= {'some_string'}
# {some_string'}

关于python - Python 3.7+ 中 {'some_string' } 和 set('some string) 作为关键字参数之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60501374/

相关文章:

Python boolean 值

java - 具有共同偏好的不当行为

python - 为什么一组数字看起来是有序的?

python - 为什么 python 不将标准输入输入作为字典读取?

python - JavaScript 的 String.fromCharCode 有 Python 版本吗?

python - 将集合的元素附加到 Python 中的列表

java - 如何为类中的参数创建 get 和 set 方法?

Java 学校项目的 map 问题

Python:全局变量的两个输入源

python - 从 QWidget (PyQt4) 调用 QMainWindow 中的方法/属性