亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python for循環(huán)賦值問(wèn)題

 更新時(shí)間:2021年06月03日 11:24:30   作者:喜歡吃布丁但是沒(méi)有錢  
這篇文章主要介紹了python for循環(huán)賦值問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

背景

寫(xiě)代碼的時(shí)候,你會(huì)發(fā)現(xiàn)你的代碼越寫(xiě)越多。

然而,功能需要也越來(lái)越多,然后你的冗余代碼就多得不能再多了~~~怎么辦,我太難了。

那就尋求一些高級(jí)寫(xiě)法,一般的高級(jí)寫(xiě)法都是盡可能地短。

另外,把重復(fù)的代碼抽取出來(lái),封裝成函數(shù),每次使用直接調(diào)函數(shù)即可。

For循環(huán)賦值

前提條件:我創(chuàng)建了一個(gè)road類,這個(gè)類里面有這些屬性。我先初始化給road賦值,然后再把這些對(duì)象放到roadObjList集合里面。

目標(biāo):從roadObjList集合里面取出每個(gè)road對(duì)象的objectid值,然后放入到新的列表里面。

class road():
    def __init__(self,gid,objectid,name,width,direction,speed,type,snode,enode,length,startX,startY,endX,endY):
        self.gid= gid
        self.objectid = objectid
        self.name = name
        self.width = width
        self.direction = direction
        self.speed = speed
        self.type = type
        self.snode = snode
        self.enode = enode
        self.length =  length
        self.startX = startX
        self.startY = startY
        self.endX = endX
        self.endY = endY

寫(xiě)法一:

        objList = []
        for r in roadObjList:
            objList.append(r.objectid)

寫(xiě)法二:

objList = [r.objectid for r in roadObjList]

我補(bǔ)充幾句

關(guān)于for循環(huán)遍歷的寫(xiě)法,還有好幾種,雖然寫(xiě)法很low,但是效果都是差不多的。

寫(xiě)法一:

 for i,ele in enumerate(roadPointObjList):
    print(i)
    print(ele)

寫(xiě)法二:

for i in range(0, len(roadPointObjList)):
    print(i)
    print(roadPointObjList[i])

總結(jié)

我覺(jué)得兩種寫(xiě)法其實(shí)都是一樣的,時(shí)間復(fù)雜度都是O(n),畢竟都要遍歷for循環(huán)。

只是第二種寫(xiě)法一步到位,當(dāng)然如果要在for循環(huán)里面作判斷的話,那就選第一種寫(xiě)法了。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論