各位大神,请叫一个问题,谢谢
请教各位大神,谁能帮帮我,解释下这段代码的执行顺序,谢谢! 这不就是去重吗 有啥不理解的不过去重不用这么麻烦一个set 搞定 >>> a=
>>> set(a)
{1, 2, 3, 4, 7, 56}
>>> 谢谢,是去重没错,但是我就是不理解print(b) 和 for语句是同级的,这是咋个执行法{:5_105:} wp231957 发表于 2023-3-16 15:46
>>> a=
>>> set(a)
{1, 2, 3, 4, 7, 56}
谢谢您,您这个我知道,但是我只是就是想了解下上面那个语法是怎么执行的。谢谢 这段代码是去重并且保留原列表中元素出现的顺序。
代码的执行过程如下:
1、定义了一个列表 nums,其中包含多个整数。
2、定义了一个空列表 b,用于存储去重后的结果。
3、开始 for 循环遍历 nums 列表中的每个元素。
4、对于每个元素 i,检查它是否已经在 b 中存在。
5、如果已经存在,则使用 continue 跳过当前循环,进入下一个元素的判断。
6、如果不存在,则使用 b.append(i) 将该元素添加到 b 列表中。
7、循环结束后,使用 print(b) 输出去重后的列表。
因此,最终的输出结果是:,即去重后保留原列表中元素出现的顺序。 isdkz 发表于 2023-3-16 15:51
这段代码是去重并且保留原列表中元素出现的顺序。
代码的执行过程如下:
太感谢了,理解了。理解了,谢谢您,谢谢 jun_269 发表于 2023-3-16 16:13
太感谢了,理解了。理解了,谢谢您,谢谢
给个最佳答案呗 wp231957 发表于 2023-3-16 15:45
这不就是去重吗 有啥不理解的
不过去重不用这么麻烦一个set 搞定
集合中不支持可哈希对象(可变对象)。
如果要去重的是可哈希对象集合也帮不了你。
附:如何查看对象是否可哈希?
>>> a = 1
>>> hash(a)
(不会报错)
>>> hash()
报错
用 try…except 捕获就可以判断了
def is_muttable(obj):
try:
hash(obj)
return True
except:
return False
页:
[1]