1.艺术不同
不可变比不可迭代更有艺术性
2.类型不同
不可变的类型:于Python中的迭代器实现了__iter__方法,因此也可以迭代。
3.对象不同
不可迭代:于从集合中取出元素的对象。
python中不可迭代和不可变区别是对象的属性不同。
不可迭代对象指的是一种数据类型,它不支持通过迭代器进行遍历。比如数字、字符串等基本数据类型都是不可迭代对象,因为它们并不具有__next__()方法。如果尝试对不可迭代对象执行for循环迭代操作,将会抛出TypeError异常。
不可变对象则是指其内部的数据无法被修改的数据类型。比如Python中的元组和字符串都是不可变对象,这意味着它们一旦被创建后就不能再进行修改,只能重新创建一个新的对象来替代原有对象。而相反,可变对象在其创建后可以随时改变其内部的数据或状态,比如Python中的列表、字典、集合等数据类型。
综上所述,在Python中不可迭代和不可变虽然都与对象的属性相关,但是两者是存在明显的区别的:前者指的是不支持遍历的类型,而后者指的则是内部的数据或状态不可改变的类型。