【python】输出按顺序排列的集合形式

遇到输出形式是set,但要求set里面的元素按顺序排列?

概念

集合(set)是一个无序的不重复元素序列,可以使用大括号 { } 或者 set() 函数创建集合。

问题1

我尝试了一下在jupyter 里先将list排序再转换为set,如果元素有异号数字的,只要是print结果,set的顺序都会改变。
但奇怪的是,如果只是利用python自己的特性输出,不用print,set的输出又是按顺序的。
【python】输出按顺序排列的集合形式

解决方法

既然不能直接输出,那就改个方法print出来。

l = [-3, -4, -1, 0, 2, 3]
print('{', end = '')
print(', '.join(str(i) for i in l),end = '')
print('}')

输出:{-3, -4, -1, 0, 2, 3}

第一次写笔记,如果有更好的写法或者建议,请大家指教!