首頁  >  問答  >  主體

Python這句話什麼意思,文法有點怪?

雷雷
怪我咯怪我咯2675 天前680

全部回覆(4)我來回復

  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-06-22 11:54:31

    相當於:

    filelist = []
    for x in os.listdir():
        if os.path.isfile(x):
            filelist.append(x)
        

    這是列表解析的內容.

    回覆
    0
  • 扔个三星炸死你

    扔个三星炸死你2017-06-22 11:54:31

    列表生成式
    相當於。 os.listdir()需要一個參數,你要得到哪個路徑下的list。

    
    In [54]: filelist = []
    
    In [55]: for x in os.listdir("."):
        ...:     if os.path.isfile(x):
        ...:         filelist.append(x)
        ...:
    
    In [56]:
    

    使用列表產生式比[].append() 快一點。你可以使用大批量的測試一下。為什麼快呢。 python listobject 模型的機制有關係,有時間可以讀讀python 原始碼,C語言寫的

    回覆
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-22 11:54:31

    定義:
    列表推導式(又稱列表解析式)提供了一種簡潔的方法來建立列表。

    規格:
    variable = [out_exp for out_exp in input_list if out_exp == 2]

    範例:
    multiples = [i for i in range(30) if i % 3 is 0]
    print(multiples)

    Output: [0, 3, 6, 9, 12, 15, 18, 21, 24, 27]

    場景:
    循環中的邏輯比較簡單時可用推導式代替,以增加程式碼可讀性和潔癖

    回覆
    0
  • 为情所困

    为情所困2017-06-22 11:54:31

    列表推導式
    列表產生式

    順序如下:

    回覆
    0
  • 取消回覆