python 列表推導

2021-07-15 18:50:06 字數 1037 閱讀 4843

**,內容**於  《head first python》書籍

列表推導(list comprehension) ,一般列表轉換,都是用for 命令迭代列表中的每乙個資料,而  列表推導可以簡化從乙個列表轉換為另乙個列表的**,

例子,現在有兩個檔案 james.txt ,julie.txt ,列印結果並排序

james.txt 內容 2.01,2-22,2.34,2:38,3.01,3-10,3:20

julie.txt 內容 2.22,2:11,2.23,2.59,3-21,3:22,2-13

python **:

###定義函式sanitize,用來轉換資料中的-與:

def sanitize(time_string):

if '_' in time_string:

splitter='_'

elif ':' in time_string:

splitter=':'

(mines,secs)=time_string.split(splitter)

return(mins + '.' + secs)

###開啟檔案,讀入資料

with open('james.txt') as jaf: data=jaf.readline()

james=data.strip().split(',')

with open('julie.txt') as juf: data=juf.readline()

julie=data.strip().split(',')

###定義新列表,用來儲存轉換後的資料

clean_james=

clean_julie=

###開始轉換

for each_t in james:

for each_t in julie:

###將新的列表資料,排序列印

print(sorted(clean_james))

print(sorted(clean_julie))

Python 列表推導

1.正常情況下,我們這樣來遍歷列表 numbers range 10 size len numbers evens i 0 while i size if i 2 0 i 1 for f in evens print f 2.當然可以用更簡單的python支援的列表推導 i for i in ran...

python列表推導

表示式 for 變數 in 列表 或者 表示式 for 變數 in 列表 if 條件 li 1,2,3,4,5,6,7,8,9 print x 2 for x in li print x 2 for x in li if x 5 print dict x,x 10 for x in li print...

Python 列表推導

start 列表推導用來構造乙個列表,可以包含表示式,for 和 if 表示式。假設我們要生成 0 到 9 的數字列表該怎麼辦呢?很簡單,看看下面的 吧。my list list range 10 那我們要生成 0 到 9 的 2 次方列表該怎麼辦呢?也不難,可以這麼寫。my list for i ...