亚洲精品中文免费|亚洲日韩中文字幕制服|久久精品亚洲免费|一本之道久久免费

      
      

            <dl id="hur0q"><div id="hur0q"></div></dl>

                小智的魔法書-python列表的range()工具

                為什么我們不能創(chuàng)造出超越光速的飛行器?有一個可能是:我們本身就是以光速在“智”宇宙中狂奔著。

                “坐地日行八萬里”,在我們形成生命的那一瞬間,我們便擁有了地球的自轉(zhuǎn)速度,除了這個速度還有地球圍繞太陽的速度,還有太陽圍繞銀河飛行的速度,還有銀河圍繞更大質(zhì)量星系的飛行速度,還有還有還有……,這些速度按角度折算后疊加的結(jié)果是怎樣?不要局限于E=M*C*C和宇宙膨脹說,仰望星空,“智”宇宙給予我們的不僅僅是煙波浩渺的震撼。

                收。

                今天我們繼續(xù)python的內(nèi)容,前面的篇章,列舉了很多列表例子,比如:a=[1,2,3,4],如果列表盒子里需要有更多的元素,那么我們要怎么辦,依次寫下去嗎?也可以,不過這個難度雖然比超越光速簡單,但我們不必悲催地一個一個地寫出來。

                python提供了range()工具,這個工具呢,可以很方便地讓我們得到一個很多元素的列表,怎么用呢,看例子。

                >>> range(9)range(0, 9)>>> list(range(9))[0, 1, 2, 3, 4, 5, 6, 7, 8]>>>

                當(dāng)我們想創(chuàng)建一個9個元素的列表,那么我們可以用list(range(9)),這個時候我們不必一個一個地將列表里的元素寫出來,很方便吧。

                這個range()工具的括號里面最多可以包含三個內(nèi)容,分別用逗號隔開,如:

                range(a,b,c)

                這里的a代表起點,默認值是0,若忽略不寫時,c也不能寫出來。

                這里的b代表終點,它是必須寫的內(nèi)容,如上面的例子range(9),數(shù)字9即是b的值。

                這里的c代表增項,即以什么樣的增項從a到b,默認值為1,在上面的例子中,range(9)等同于range(0,9,1),寫法上只是忽略了第一位置的0和末尾的1,而不是range(9,1),只忽略不寫了第一位置的0。

                >>> list(range(9,1))[]>>>

                使用list(range(9,1))后,得到一個空列表,很顯然range(9,1)不是range(9)。

                range(9,1)等同于什么?range(9,1)等同于range(9,1,1),忽略不寫的是最末位的1,可以這樣理解:內(nèi)容c是最優(yōu)先可忽略的,其次是內(nèi)容a,這個要記牢。

                >>> list(range())TypeError: range expected 1 arguments, got 0>>>

                若我們在括號中什么也不寫,單純的list(range())是不行的,即:內(nèi)容b不能不寫。

                值得注意的是,使用range(a,b,c)產(chǎn)生的列表,當(dāng)c=1時,列表元素的個數(shù)是b個。

                有了range(a,b,c)這樣的工具,創(chuàng)造數(shù)字元素列表很方便,我們利用這三個內(nèi)容可以創(chuàng)建一些不同的列表來更深入的了解。

                >>> a=0>>> b=30>>> c=1>>> list(range(a,b,c))[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10, 11, 12, 13, 14, 15, 16, 17, 18, 19,20, 21, 22, 23, 24, 25, 26, 27, 28, 29]>>> list(range(b))[0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10, 11, 12, 13, 14, 15, 16, 17, 18, 19,20, 21, 22, 23, 24, 25, 26, 27, 28, 29]>>>

                這是c等于1的樣子,列表元素的個數(shù)是30個,c=2呢?

                >>> c=2>>> list(range(a,b,c))[0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28]>>> len(list(range(a,b,c)))15>>>

                當(dāng)c=2時,產(chǎn)生了b//c個元素的列表,而且是個偶數(shù)列表。

                有奇數(shù)的么?

                >>> a=1>>> list(range(a,b,c))[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29]>>> len(list(range(a,b,c)))15>>>

                很神奇,當(dāng)a=1時,奇數(shù)列表出現(xiàn)了。

                由此看來,列表元素的個數(shù)只取決于b//c,能被整除時,元素個數(shù)即是b//c,那不能被整除時呢?

                >>> b=9>>> len(list(range(a,b,c)))4>>> b//c4>>>

                不能被整除時,b//c好像也是對的。好吧好吧,b//c雖然寫起來簡單,可使用工具len(),犧牲些時間,準(zhǔn)確度有保障。

                c是負值會怎樣呢?

                >>> c=-2>>> len(list(range(a,b,c)))0>>>

                居然是個空列表,對對對,c為負值的時候,起點數(shù)字要大于終點的數(shù)字。

                >>> a=9>>> b=0>>> len(list(range(a,b,c)))5>>> list(range(a,b,c))[9, 7, 5, 3, 1]>>>

                哦哦,這樣得到的元素個數(shù): (a+1)//(-c),很麻煩,很不好理解,好吧,獲取列表的元素個數(shù)還是用len()這個工具,很直觀。

                今天的內(nèi)容就這么多,range()工具是我們創(chuàng)造數(shù)字元素列表的工具,有了這樣的工具,我們很容易創(chuàng)造出一些特殊的全是數(shù)字的列表,忽然有種感想,之所以我們創(chuàng)造不出超越光速的飛行器,很大可能是我們使用的工具不對,或許在未來的某一天,我們發(fā)現(xiàn)類似range()的工具,可以以任意倍數(shù)的光速進行飛行。

                —————————-

                鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場,版權(quán)歸原作者所有,如有侵權(quán)請聯(lián)系管理員(admin#wlmqw.com)刪除。
                用戶投稿
                上一篇 2022年6月28日 18:52
                下一篇 2022年6月28日 18:52

                相關(guān)推薦

                聯(lián)系我們

                聯(lián)系郵箱:admin#wlmqw.com
                工作時間:周一至周五,10:30-18:30,節(jié)假日休息