Файтон хэлний онцлог нь жагсаалттай маш сайн хоршин ажилладаг. Жагсаалтын элемент бүрт ямар нэгэн функц ажиллуулж гарсан жагсаалтыг өөр жагсаалтруу оноон буулгаж болдог.
За жишээгээ харцгаая
>>> li = [1, 9, 8, 4]
>>> [elem*2 for elem in li]
[2, 18, 16, 8]
>>> li
[1, 9, 8, 4]
>>> li = [elem*2 for elem in li]
>>> li
[2, 18, 16, 8]
юу болоод өнгөрвөө. За li гэсэн дөрвөн элэмент бүхий жагсаалт байгаан байжээ. Хоёр дахь мөр нь энэ жагсаалтын элементи бүрийг давтаад өөрөөр хэлбэл дарааллын дагуу сугалж байгаад 2-оор үржиж байна. li жагсаалтад ямар нэгэн өөрчлөлт ороогүй тул анхныхаараал байгаа гэдгийг 4-р мөрөнд илэрхийлж байна. 5-р мөрөн li өөрөө өөртөө буулгалт хийж байнаа. Өмнөх шиг жагсаалтын элемэнт болгоныг 2-оор үржиж li-д буулгаж байна. Үр дүнг 6,7-р мөрөн хэвлэж харуулж байгаан байна. Тэхээр
for iter in list гэх нь list доторхи бүх элементүүдийг давтаж байгаан байна. Давталтын нэг цикл бүрд iter-т list-ийн нэг утга харгалзахнээ. Нэгэнтээ жагсаалтаас сугалаад гаргаад ирсэн элемэнтийг яах эсэх нь таны хэрэг үржнүү нэмнүү хуваануу дураалаал бол :)
Dictionary төрөлд байгаа утгуудыг бүгдийг сугалаад Tuple байдлаар гаргаж авбал дараах байдалтай хийгдэнэ. Эдгээр төрлүүдийг өмнөх постод сайхан тайлбарласан байгаа!
["%s=%s" % (k, v) for k, v in params.items()]
dictionary төрөлд хэрэглэгддэг методуудынх нь ялгааг харцгаая
>>> params = {"server":"mpilgrim", "database":"master", "uid":"sa", "pwd":"secret"}
>>> params.keys()
['server', 'uid', 'database', 'pwd']
>>> params.values()
['mpilgrim', 'sa', 'master', 'secret']
>>> params.items()
[('server', 'mpilgrim'), ('uid', 'sa'), ('database', 'master'), ('pwd', 'secret')]
Тэхээр items() метод нь хос хосоор гаргаж ирж байгаа биз!
Saturday, February 6, 2010
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment