Re: [問題] list 的 index
※ 引述《jlovet.bbs@ptt.cc (Want 2 see u no more)》之銘言:
: list = ["1.jpg","2.jpg","3.bmp"]
: for file in list:
: print "Convert ",file,"to bmp"
: 假設我有一個程式,要把所有jpg轉成bmp
首先,轉圖檔可能可以用 convert (ImageMagick 的一個程式)
convert 1.jpg 1.bmp
convert 會自動根據副檔名來決定圖檔格式
如果不想呼叫其它程式,可能要用到 PIL
: 希望順便把檔名list改掉
: 變成
: list = ["1.bmp","2.bmp","3.bmp"]
要將類似 "1.jpg" 改成 "1.bmp" ,可以改慮用 replace
其次,
l=["1.jpg","2.jpg","3.bmp"]
ll=[]
for f in l:
ll.append(f.replace("jpg", "bmp"))
l=ll
另外,如果不介意函數式語言的話,可以用 map
l=map(lambda x: x.replace("jpg", "bmp"), ["1.jpg","2.jpg","3.bmp"])
: 請問這要怎麼寫呢?
: 或是,我要怎麼知道我現在在list的第幾個位置?
純粹回答這個問題,有幾個方法:
一、用 enumerate
for index, file in enumerate(list):
print u"第 %s 個為 %s"%(index, file)
二、用 while
index=0
while index<len(list):
index+=1
: 謝謝
另外, list 跟 file 是已定義過的,最好不要用來做為變數名,避免誤解
list 用來把一個序列(可能是 tuple, list, dict)轉成 list
file 則是 open 的同義辭(不過,在 3.0 中只剩 open)
--
※Post by zao from linus.csie.ntu.edu.tw
老鼠的香香乳酪洞˙電子佈告欄系統˙alexbbs.twbbs.org˙140.113.166.7
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章