91aaa在线国内观看,亚洲AV午夜福利精品一区二区,久久偷拍人视频,久久播这里有免费视播

<strong id="fvuar"></strong>

  • <sub id="fvuar"><dl id="fvuar"><em id="fvuar"></em></dl></sub>

    1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

      手機(jī)站
      千鋒教育

      千鋒學(xué)習(xí)站 | 隨時隨地免費(fèi)學(xué)

      千鋒教育

      掃一掃進(jìn)入千鋒手機(jī)站

      領(lǐng)取全套視頻
      千鋒教育

      關(guān)注千鋒學(xué)習(xí)站小程序
      隨時隨地免費(fèi)學(xué)習(xí)課程

      當(dāng)前位置:首頁  >  技術(shù)干貨  > 十個極簡Python代碼

      十個極簡Python代碼

      來源:千鋒教育
      發(fā)布人:xqq
      時間: 2023-11-06 15:03:53 1699254233

      雖然python是一個易入門的語言,但是很多人依然還是會問到底怎么樣學(xué)Python才最快,答案當(dāng)然是實(shí)戰(zhàn)各種小項(xiàng)目,只有自己去想與寫,才記得住規(guī)則。本文寫的是10個極簡任務(wù),初學(xué)者可以嘗試著自己實(shí)現(xiàn);本文同樣也是10段代碼,Python開發(fā)者也可以看看是不是有沒想到的用法。

      1、重復(fù)元素判定

      以下方法可以檢查給定列表是不是存在重復(fù)元素,它會使用set()函數(shù)來移除所有重復(fù)元素。

      defall_unique(lst):

      returnlen(lst)==len(set(lst))

      x=[1,1,2,2,3,2,3,4,5,6]

      y=[1,2,3,4,5]

      all_unique(x)#False

      all_unique(y)#True

      2、分塊

      給定具體的大小,定義一個函數(shù)以按照這個大小切割列表。

      frommathimportceil

      defchunk(lst,size):

      returnlist(

      map(lambdax:lst[x*size:x*size+size],

      list(range(0,ceil(len(lst)/size)))))

      chunk([1,2,3,4,5],2)

      #[[1,2],[3,4],5]

      3、壓縮

      這個方法可以將布爾型的值去掉,例如(False,None,0,“”),它使用filter()函數(shù)。

      defcompact(lst):

      returnlist(filter(bool,lst))

      compact([0,1,False,2,'',3,'a','s',34])

      #[1,2,3,'a','s',34]

      4、使用枚舉

      我們常用For循環(huán)來遍歷某個列表,同樣我們也能枚舉列表的索引與值。

      list=["a","b","c","d"]

      forindex,elementinenumerate(list):

      print("Value",element,"Index",index,)

      #('Value','a','Index',0)

      #('Value','b','Index',1)

      #('Value','c','Index',2)

      #('Value','d','Index',3)

      5、解包

      如下代碼段可以將打包好的成對列表解開成兩組不同的元組。

      array=[['a','b'],['c','d'],['e','f']]

      transposed=zip(*array)

      print(transposed)

      #[('a','c','e'),('b','d','f')]

      6、展開列表

      該方法將通過遞歸的方式將列表的嵌套展開為單個列表。

      defspread(arg):

      ret=[]

      foriinarg:

      ifisinstance(i,list):

      ret.extend(i)

      else:

      ret.append(i)

      returnret

      defdeep_flatten(lst):

      result=[]

      result.extend(

      spread(list(map(lambdax:deep_flatten(x)iftype(x)==listelsex,lst))))

      returnresult

      deep_flatten([1,[2],[[3],4],5])#[1,2,3,4,5]

      7、列表的差

      該方法將返回第一個列表的元素,且不在第二個列表內(nèi)。如果同時要反饋第二個列表獨(dú)有的元素,還需要加一句set_b.difference(set_a)。

      defdifference(a,b):

      set_a=set(a)

      set_b=set(b)

      comparison=set_a.difference(set_b)

      returnlist(comparison)

      difference([1,2,3],[1,2,4])#[3]

      8、執(zhí)行時間

      如下代碼塊可以用來計(jì)算執(zhí)行特定代碼所花費(fèi)的時間。

      importtime

      start_time=time.time()

      a=1

      b=2

      c=a+b

      print(c)#3

      end_time=time.time()

      total_time=end_time-start_time

      print("Time:",total_time)

      #('Time:',1.1205673217773438e-05)

      9、Shuffle

      該算法會打亂列表元素的順序,它主要會通過Fisher-Yates算法對新列表進(jìn)行排序:

      fromcopyimportdeepcopy

      fromrandomimportrandint

      defshuffle(lst):

      temp_lst=deepcopy(lst)

      m=len(temp_lst)

      while(m):

      m-=1

      i=randint(0,m)

      temp_lst[m],temp_lst[i]=temp_lst[i],temp_lst[m]

      returntemp_lst

      foo=[1,2,3]

      shuffle(foo)#[2,3,1],foo=[1,2,3]

      10、交換值

      不需要額外的操作就能交換兩個變量的值。

      defswap(a,b):

      returnb,a

      a,b=-1,14

      swap(a,b)#(14,-1)

      spread([1,2,3,[4,5,6],[7],8,9])#[1,2,3,4,5,6,7,8,9]

      以上內(nèi)容為大家介紹了十個極簡Python代碼,希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。http://www.jsszjs.cn/


      聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
      10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
      請您保持通訊暢通,專屬學(xué)習(xí)老師24小時內(nèi)將與您1V1溝通
      免費(fèi)領(lǐng)取
      今日已有369人領(lǐng)取成功
      劉同學(xué) 138****2860 剛剛成功領(lǐng)取
      王同學(xué) 131****2015 剛剛成功領(lǐng)取
      張同學(xué) 133****4652 剛剛成功領(lǐng)取
      李同學(xué) 135****8607 剛剛成功領(lǐng)取
      楊同學(xué) 132****5667 剛剛成功領(lǐng)取
      岳同學(xué) 134****6652 剛剛成功領(lǐng)取
      梁同學(xué) 157****2950 剛剛成功領(lǐng)取
      劉同學(xué) 189****1015 剛剛成功領(lǐng)取
      張同學(xué) 155****4678 剛剛成功領(lǐng)取
      鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
      董同學(xué) 138****2867 剛剛成功領(lǐng)取
      周同學(xué) 136****3602 剛剛成功領(lǐng)取
      相關(guān)推薦HOT