8. python2和python3的range(100)的区别

每天至少打卡一道python面试题。以尽量多的方式解锁题目,如果有遗漏的方法,欢迎在评论区补充。希望大家一起提高!

在python2中有range和xrange两种方法,其中range生成的是一个列表,xrange生成的是一个迭代器

在python3中只有range方法,生成的是一个迭代器,如果要转换成列表,直接使用list(range(100))

这样做的目的主要是为了节约内存,在python2中调用range(100)会直接开辟一个1到100的列表内存空间,而在python3中先生成迭代器,利用迭代器的惰性加载原理,当发生实际调用时才开辟内存空间,可以节约很多内存

你可能感兴趣的:(8. python2和python3的range(100)的区别)