កំរង list ស្រដៀងនឹងកំរង tuple ដែរ ព្រោះវាក៏ដូចជាកំរងបើកមួយ ដែលនៅក្នុងនោះអាចមានវត្ថុជាច្រើន តំរៀបជូរគ្នាតាមលេខរៀងចាប់ពី 0 ឡើងទៅ បើរាប់ពីដើមកំរងឡើងទៅ និងមានលេខរៀងចាប់ពី -1 ចុះមក បើយើងរាប់ពីចុងកំរងចុះមកវិញ។
ដើម្បីបង្កើតកំរង list យើងត្រូវធ្វើដូចខាងក្រោមនេះ៖
mylist = [100, 10.5, "profit", True, 200, "sale", False]
print(mylist)
យើងអាចយកកំរង list ផ្សេងៗ មកធ្វើប្រមាណវិធី concatenation operation ដូចខាងក្រោមនេះ៖
list1 = [100, 10.5, "profit", True, 200, "sale", False]
list2 = [200, False, 3.14]
print(list1 + list2)
យើងក៏អាចយកកំរង list ផ្សេងៗមកធ្វើប្រមាណវិធី repetition operation បានដែរ។
list = [100, 10.5, "profit", True]
print(list * 3)
លើសពីនេះទៀត កំរង list ផ្សេងៗ ក៏អាចត្រូវយកមកធ្វើប្រមាណវិធី logical operation បានដែរ។
list1 = [100, 10.5, "profit", True]
list2 = []
print(list1 and list2)
print(list1 or list2)
print(not list1)
print(not list2)
នៅក្នុងការធ្វើប្រមាណវិធី logical opeartion កំរង list ទទេ សមមូលនឹង False ។
មួយវិញទៀត យើងអាចយកកំរង list ផ្សេងៗមកធ្វើប្រមាណវិធីប្រៀបធៀបដូចខាងក្រោមនេះ៖
list1 = [100, 10.5, 300, 0.33]
list2 = [200, 0.5, 50 ]
print(list1 == list2)
print(list1 != list2)
print(list1 > list2)
print(list1 < list2)
print(list1 >= list2)
print(list1 <= list2)
ដូចគ្នានឹងកំរង tuple ដែរ ប្រមាណវិធីប្រៀបធៀបរវាងកំរង list ផ្សេងៗ គឺជាប្រមាណវិធីប្រៀបធៀបតាមរបៀបវចនានុក្រម។
យើងអាចយកកំរង list ទាំងឡាយមកធ្វើប្រមាណវិធី membership operation ដូចខាងក្រោមនេះ៖
list = [100, 10.5, "sale", 300, 0.33]
item = "sale"
print(item in list)
print(item not in list)
យើងអាចយកកំរង list ផ្សេងៗមកធ្វើប្រមាណវិធី identification operation ដូចខាងក្រោមនេះ៖
list1 = [100, 10.5, "sale", 300, 0.33]
list2 = list1
list3 = [100, 10.5, "sale", 300, 0.33]
print(list1 is list2)
print(list1 is list3)
print(list is not list3)
យើងអាចយកកំរង list ទាំងឡាយមកធ្វើប្រមាណវិធី indexing operation ដូចខាងក្រោមនេះ៖
list = [100, 10.5, "sale", 300, 0.33]
print(list[2])
list[2] = "buy"
print(list[2])
ដូចនេះ យើងឃើញថា element នៅក្នុងកំរង list អាចត្រូវជំនួសដោយវត្ថុផ្សេងទៀតបាន។ គឺលក្ខណៈនេះហើយ ដែលធ្វើអោយកំរង list ខុសពីកំរង tuple និង string ។ element នៅក្នុងកំរង tuple និងstring ដែលជាឃ្លាប្រយោគទាំងឡាយ មិនអាចត្រូវដោះដូរឬជំនួសដោយវត្ថុផ្សេងទៀតបានឡើយ។ ការប៉ុនប៉ងដោះដូរ element នៅក្នុងកំរង tuple និង string នឹងបណ្តាលអោយកំហុសកើតមានឡើង។
នៅក្នុងភាសា Python គ្រប់វត្ថុទាំងឡាយណា ដែលមាន element អាចត្រូវដោះដូរបាន គឺជាវត្ថុ mutable និងគ្រប់វត្ថុទាំងឡាយណាដែលមាន element មិនអាចត្រូវដោះដូរបាន គឺជាវត្ថុ immutable ។ ជាលទ្ធផល វត្ថុដែលជា លេខ Boolean, None, string និង កំរង tuple គឺជាវត្ថុ immutable ។ ចំណែកឯកំរង list វិញ គឺជាវត្ថុ mutable ។
យ៉ាងណាម៉ិញ យើងអាចយកកំរង list ផ្សេងៗ មកធ្វើប្រមាណវិធី slicing operation ដូចខាងក្រោមនេះ៖
list = [100, 1.5, "name", True, 200, 3.5, "profit", "last name"]
print(list[1:7])
print(list[1:])
print(list[:7])
print(list[:])
print(list[1:7:2])
ដោយហេតុថា កំរង list គឺជាវត្ថុដែលមានលក្ខណៈជា mutable ដូចនេះយើងអាចយកវាមកធ្វើប្រមាណវិធី slicing operation ដើម្បីដោះដូរ element របស់វាមួយចំនួនដូចខាងក្រោមនេះ៖
list = [100, 1.5, "name", True, 200, 3.5, "profit", "last name"]
list[1:7] = [1, 2, 3, 4, 5, 6]
print(list)
វត្ថុដែលត្រូវយកទៅជំនួសបណ្តា element នៅក្នុងកំរង list អាចជាវត្ថុដែលជា element របស់កំរង tuple ក៏បានដែរ។
list = [100, 1.5, "name", True, 200, 3.5, "profit", "last name"]
list[1:7] = (1, 2, 3, 4, 5, 6)
print(list)
ក្រៅពីការដោះដូរនិងឬបន្ថែមបន្ថយ element នៃកំរង list យើងក៏អាចលុប element ចេញពីកំរង list បានដែរ ដោយប្រើប្រាស់បញ្ជា del ។
list = [100, 1.5, "name", True, 200, 3.5, "profit", "last name"]
list[1:7] = (1, 2, 3, 4, 5, 6)
print(list)
del list[2]
print(list)
del list[1:7]
print(list)