python3生成一个定长列表_range方法在Python2和Python3中的不同
- range
- 列表
range()方法是Python中常用的方法, 但是在Python2和Python3中使用方法不同,下面看下它們的不同使用方法。
range方法詳解
range(start, stop[, step])
range是python中的其中一個(gè)內(nèi)置函數(shù)
作用:可創(chuàng)建一個(gè)整數(shù)列表。一般用在 for 循環(huán)中。
參數(shù)說(shuō)明:
start:起點(diǎn),一般和stop搭配使用,既生成從start開(kāi)始到stop結(jié)束(不包括stop)范圍內(nèi)的整數(shù),例如:range(1,10),會(huì)生成[1,2,3,4,5,6,7,8,9]
stop:終點(diǎn),可以和start搭配使用,也可以單獨(dú)使用,既當(dāng)start=0時(shí),例如range(5) = range(0, 5)
step:步長(zhǎng),既下一次生成的數(shù)和這次生成的數(shù)的差,例如range(1, 10, 2) 生成[1,3,5,7,9],再如range(1,10,3) 生成[1, 4, 7]
代碼示例:
Python 3.7.2 (default, Feb 12 2019, 08:15:36) [Clang 10.0.0 (clang-1000.11.45.5)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> for i in range(1,10, 1): ... print(i) ... >>>使用區(qū)別
在python2中,range方法得到的結(jié)果就是一個(gè)確定的列表對(duì)象,列表對(duì)象所擁有的方法,range方法生成的結(jié)果對(duì)象都可以直接使用,而在python3中,range方法得到的對(duì)象是一個(gè)迭代器而不是一個(gè)確定的列表,如果想要轉(zhuǎn)化為列表對(duì)象則需要再使用list方法進(jìn)行轉(zhuǎn)化。
for i in range(start, stop)在python2和python3中都可使用
代碼實(shí)例:
Python3
Python 3.7.2 (default, Feb 12 2019, 08:15:36) [Clang 10.0.0 (clang-1000.11.45.5)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> for i in range(1,10, 1): ... print(i) ... >>>Python2:
Python 2.7.10 (default, Aug 17 2018, 19:45:58) [GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.0.42)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> for i in range(1,10, 1): ... print(i) ... >>>
Python2直接生成列表,Python3需要配合list方法使用
Python3:
Python 3.7.2 (default, Feb 12 2019, 08:15:36) [Clang 10.0.0 (clang-1000.11.45.5)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> l = range(1, 10) >>> l range(1, 10) >>> type(l) <class 'range'> >>> l2 = list(l) >>> l2 [1, 2, 3, 4, 5, 6, 7, 8, 9] >>>Python2:
Python 2.7.10 (default, Aug 17 2018, 19:45:58) [GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.0.42)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> l = range(1, 10) >>> l [1, 2, 3, 4, 5, 6, 7, 8, 9] >>>
Python3中range()方法生成的已經(jīng)不是一個(gè)列表, 而是一個(gè)range的迭代器
總結(jié)
以上是生活随笔為你收集整理的python3生成一个定长列表_range方法在Python2和Python3中的不同的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: druid连接池mysql5.7_Spr
- 下一篇: nitrous.io mysql_云ID