如何在for循环中获取set的第i个元素并依次输出?
解答
Set(集合)是无序的数据结构,本身没有「第i个元素」的定义,这是你按索引取值报错的核心原因。
结合你使用的TI编程语法,有两种实现遍历打印的方案:
方案1:转为有序列表后按索引取值
如果要保留现有for索引循环的写法,先把Set转成List即可:
- 用
list()函数转换Set为列表:
list(nums)->num_list
- 修改循环从列表中取对应索引的元素:
For i,1,dim(num_list) Print num_list[i] EndFor
方案2:直接遍历Set元素
如果不需要用到索引值本身,无需手动维护索引,写法更简单:
For each,val,nums Print val EndFor
注意:Set的无序性会导致遍历/转列表后的输出顺序不一定和定义时的
5、6、7完全一致,如果对输出顺序有严格要求,建议直接用List存储数据,定义为{5,6,7}->num_list即可直接按索引取值。
内容的提问来源于stack exchange,提问作者Saddy
相关产品推荐
相关产品推荐

