关于python使用list()的问题

下边的代码是用内置的list()函数来创建列表,规定list小括号中的数据必须为可迭代对象,list_1中输入数值1,判断为不可迭代对象,而输入'1'判断为可迭代对象,为何会这样?为何1就不能算可迭代,而'1'就算可迭代呢?

# 结果报错
list_1 = list(1)
print(list_1)

# 结果为['1']
list_2 = list('1')
print(list_2)

‘1’是字符串啊,字符串是个可迭代对象
a=list(),里面不加参数的时候,是创建一个空列表
如果里面要加参数,是把其他可迭代对象强制转换成list类型,你不能随便往里放东西呀

字符串才可以直接转为list列表
什么是迭代器
迭代是python中访问集合元素的一种非常强大的一种方式。迭代器是一个可以记住遍历位置的对象,因此不会像列表那样一次性全部生成,而是可以等到用的时候才生成,因此节省了大量的内存资源。迭代器对象从集合中的第一个元素开始访问,直到所有的元素被访问完。迭代器有两个方法:iter()和next()方法。
可迭代的对象
类似于list、tuple、str 等类型的数据可以使用for …… in…… 的循环遍历语法从其中依次拿到数据并进行使用,我们把这个过程称为遍历,也称迭代。python中可迭代的对象有list(列表)、tuple(元组)、dirt(字典)、str(字符串)set等。

int类型对象不可迭代,所以会出现错误

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632