
เขียนโปรแกรมภาษา Python ตอนที่ 67 การเข้าถึงข้อมูลใน List
เราสามารถเข้าถึงข้อมูลที่เก็บอยู่ใน List โดยการระบุอินเด็กซ์ โดยอินเด็กซ์ของ List จะเริ่มจาก 0 ดังนั้น ถ้าเราต้องการเข้าถึงข้อมูลตัวแรกใน List เราสามารถเข้าถึงได้โดยการอ้างอิงอินเด็กซ์ลำดับ 0 ดังนี้
my_list = ['iPhone', 'iPad', 'iPod'] print(my_list[0])
ผลลัพธ์
iPhone
การระบุอินเด็กซ์ติดลบ
การเข้าถึงสมาชิกข้อมูลใน List โดยใช้ตัวเลขจำนวนเต็มตามปกติ จะเป็นการเข้าถึงข้อมูลโดยนับเริ่มจากข้อมูลตัวแรกใน List
ถ้าเราต้องการเข้าถึงข้อมูลโดยเริ่มจากข้อมูลลำดับสุดท้าย เราสามารถทำได้โดยการระบุอินเด็กซ์เป็นจำนวนติดลบ เช่น ข้อมูลตัวแรกนับจากท้ายสุด อินเด็กซ์เป็น -1 ข้อมูลตัวที่ 2 จากลำดับท้ายสุด อินเด็กซ์เป็น -2 ตามลำดับ
my_list = ['iPhone', 'iPad', 'iPod'] print(my_list[-1])
ผลลัพธ์
iPod
จากตัวอย่าง ระบุอินเด็กซ์เป็น -1 หมายถึง เอาข้อมูลตัวที่ 1 นับจากลำดับท้ายสุด จึงได้ผลลัพธ์เป็น iPod ซึ่งเป็นข้อมูลลำดับสุดท้ายใน List นั่นเอง
การเข้าถึงข้อมูลเป็นช่วง
นอกจากการเข้าถึงข้อมูลใน List ทีละตัวแล้ว เรายังสามารถเข้าถึงข้อมูลทีละหลาย ๆ ตัว โดยการกำหนดอินเด็กซ์เป็นช่วง โดยการระบุอินเด็กซ์เริ่มต้นและอินเด็กซ์สิ้นสุดที่ต้องการข้อมูล เช่น
list[2:6]
เป็นการเข้าถึงข้อมูลเริ่มจากอินเด็กซ์ 2 (ซึ่งหมายถึงข้อมูลลำดับที่ 3) ไปจนถึงอินเด็กซ์ 6 (ซึ่งอินเด็กซ์ 6 จะไม่ถูกรวมเข้ามา นั่นก็หมายความว่า เราจะได้ข้อมูลถึงอินเด็กซ์ 5 (ซึ่งหมายถึงข้อมูลตัวที่ 6 ใน List) เท่านั้น)
และผลลัพธ์ที่ได้จากการเข้าถึงข้อมูลแบบช่วง เราจะได้ข้อมูลเป็น List ใหม่ ที่ประกอบด้วยสมาชิกเป็นข้อมูลตามที่เราระบุ
เพื่อความเข้าใจมากยิ่งขึ้น มาดูตัวอย่างกันดีกว่า
my_list = ['iPhone', 'iPad', 'iPod', 'Samsung', 'Vivo', 'Wiko', 'Nokia', 'Oppo'] print(my_list[2:6])
ผลลัพธ์
[‘iPod’, ‘Samsung’, ‘Vivo’, ‘Wiko’]
ลำดับข้อมูลใน List เป็นดังนี้

คำสั่ง print(my_list[2:6])
หมายถึง ให้เอาข้อมูลลำดับ 2 ถึงลำดับ 6-1 (เท่ากับ 5) จึงเป็นที่มาของผลลัพธ์ตามตัวอย่าง
สำหรับการเข้าถึงข้อมูลแบบช่วงดังกล่าว ถ้าเราเว้นอินเด็กซ์เริ่มต้นไว้ จะหมายถึงการเข้าถึงข้อมูลตั้งแต่ลำดับแรก คืออินเด็กซ์ 0 นั่นเอง ดังตัวอย่าง
my_list = ['iPhone', 'iPad', 'iPod', 'Samsung', 'Vivo', 'Wiko', 'Nokia', 'Oppo'] print(my_list[:6])
ผลลัพธ์
[‘iPhone’, ‘iPad’, ‘iPod’, ‘Samsung’, ‘Vivo’, ‘Wiko’]
และเช่นเดียวกัน ถ้าเราระบุเฉพาะอินเด็กซ์เริ่มต้น เว้นอินเด็กซ์สิ้นสุดไว้ จะหมายถึง การเข้าถึงข้อมูลตั้งแต่อินเด็กซ์เริ่มต้นที่ระบุ ไปจนถึงข้อมูลตัวสุดท้ายใน List
my_list = ['iPhone', 'iPad', 'iPod', 'Samsung', 'Vivo', 'Wiko', 'Nokia', 'Oppo'] print(my_list[2:])
ผลลัพธ์
[‘iPod’, ‘Samsung’, ‘Vivo’, ‘Wiko’, ‘Nokia’, ‘Oppo’]
เราสามารถเข้าถึงข้อมูลแบบช่วงโดยการระบุอินเด็กซ์ติดลบได้เช่นกัน ซึ่งจะหมายถึงการเข้าถึงข้อมูลตามลำดับที่ระบุ แต่นับมาจากข้างหลัง เช่น
list[-5:-1]
จะหมายถึง เข้าถึงข้อมูลตั้งแต่ลำดับที่ 5 นับจากตัวสุดท้าย ไปจนถึงข้อมูลลำดับที่ 2 นับจากตัวสุดท้าย (ข้อมูลลำดับ -1 ซึ่งหมายถึงข้อมูลตัวสุดท้าย จะไม่ถูกรวมเข้ามา จะได้ข้อมูลตัวถัดมา คือ -2)
ดังตัวอย่าง
my_list = ['iPhone', 'iPad', 'iPod', 'Samsung', 'Vivo', 'Wiko', 'Nokia', 'Oppo'] print(my_list[-5:-1])
ผลลัพธ์
[‘Samsung’, ‘Vivo’, ‘Wiko’, ‘Nokia’]
ตรวจสอบว่ามีข้อมูลที่ต้องการอยู่ใน List หรือไม่
เราสามารถตรวจสอบได้ว่า มีข้อมูลที่เราต้องการอยู่ใน List หรือไม่ โดยใช้คีย์เวิร์ด in
ดังนี้
stock = ['iPhone', 'iPad', 'iPod', 'Samsung', 'Vivo', 'Wiko', 'Nokia', 'Oppo'] if "iPhone" in stock: print("There is iPhone in stock.")
ผลลัพธ์
There is iPhone in stock.
เขียนโปรแกรมภาษา Python
- ตอนที่ 1 ทำความรู้จักกับภาษาไพธอน Python
- ตอนที่ 2 เตรียมเครื่องมือ
- ตอนที่ 3 Python Syntax
- ตอนที่ 4 การเขียนคอมเม้นต์
- ตอนที่ 5 การใช้ฟังก์ชัน print
- ตอนที่ 6 ตัวแปร
- ตอนที่ 7 การตั้งชื่อตัวแปร
- ตอนที่ 8 การกำหนดค่าให้ตัวแปรทีละหลายตัว
- ตอนที่ 9การแสดงค่าจากตัวแปร
- ตอนที่ 10 ตัวแปรประเภท Global
- ตอนที่ 11 ชนิดข้อมูล
- ตอนที่ 12 ข้อมูลชนิดตัวเลข
- ตอนที่ 13 การแปลงชนิดข้อมูล
- ตอนที่ 14 ข้อมูลชนิด String
- ตอนที่ 15 slice syntax
- ตอนที่ 16 การเปลี่ยนแปลงข้อมูล String
- ตอนที่ 17 การต่อข้อมูลชนิด String
- ตอนที่ 18 การจัดรูปแบบ String
- ตอนที่ 19 Escape Character
- เตอนที่ 20 เมธอด zfill()
- ตอนที่ 21 เมธอด upper()
- ตอนที่ 22 เมธอด title()
- ตอนที่ 23 เมธอด swapcase()
- ตอนที่ 24 เมธอด strip()
- ตอนที่ 25 เมธอด startswith()
- ตอนที่ 26 เมธอด splitlines()
- ตอนที่ 27 เมธอด split()
- ตอนที่ 28 เมธอด rstrip()
- ตอนที่ 29 เมธอด rsplit()
- ตอนที่ 30 เมธอด rpartition()
- ตอนที่ 31 เมธอด rjust()
- ตอนที่ 32 เมธอด rindex()
- ตอนที่ 33 เมธอด rfind()
- ตอนที่ 34 เมธอด replace()
- ตอนที่ 35 เมธอด partition()
- ตอนที่ 36 เมธอด lstrip()
- ตอนที่ 37 เมธอด lower()
- ตอนที่ 38 เมธอด ljust()
- ตอนที่ 39 เมธอด join()
- ตอนที่ 40 เมธอด isupper()
- ตอนที่ 41 เมธอด istitle()
- ตอนที่ 42 เมธอด isspace()
- ตอนที่ 43 เมธอด isprintable()
- ตอนที่ 44 เมธอด isnumeric()
- ตอนที่ 45 เมธอด islower()
- ตอนที่ 46 เมธอด isidentifier()
- ตอนที่ 47 เมธอด isdigit()
- ตอนที่ 48 เมธอด isdecimal()
- ตอนที่ 49 เมธอด isalpha()
- ตอนที่ 50 เมธอด isalnum()
- ตอนที่ 51 เมธอด index()
- ตอนที่ 52 เมธอด format()
- ตอนที่ 53 เมธอด find()
- ตอนที่ 54 เมธอด expandtabs()
- ตอนที่ 55 เมธอด endswith()
- ตอนที่ 56 เมธอด encode()
- ตอนที่ 57 เมธอด count()
- ตอนที่ 58 เมธอด center()
- ตอนที่ 59 เมธอด casefold()
- ตอนที่ 60 เมธอด capitalize()
- ตอนที่ 61 เมธอด format_map()
- ตอนที่ 62 เมธอด maketrans()
- ตอนที่ 63 เมธอด translate()
- ตอนที่ 64 ข้อมูลชนิด Boolean
- ตอนที่ 65 ตัวดำเนินการ
- ตอนที่ 66 ข้อมูลประเภท List
- ตอนที่ 67 การเข้าถึงสมาชิกใน List
- ตอนที่ 68 การเปลี่ยนแปลงข้อมูลใน List
- ตอนที่ 69 การเพิ่มข้อมูลใน List
- ตอนที่ 70 การลบข้อมูลใน List
- ตอนที่ 71 การเข้าถึงข้อมูลใน List ด้วย loop
- ตอนที่ 72 List Comprehension
- ตอนที่ 73 การเรียงข้อมูลใน List
- ตอนที่ 74 การคัดลอก List
- ตอนที่ 75 การรวม List เข้าด้วยกัน
- ตอนที่ 76 เมธอด append()
- ตอนที่ 77 เมธอด clear()
- ตอนที่ 78 เมธอด copy()
- ตอนที่ 79 เมธอด count()
- ตอนที่ 80 เมธอด extend()
- ตอนที่ 81 เมธอด index()
- ตอนที่ 82 เมธอด insert()
- ตอนที่ 83 เมธอด pop()
- ตอนที่ 84 เมธอด remove()
- ตอนที่ 85 เมธอด reverse()
- ตอนที่ 86 เมธอด sort()
- ตอนที่ 87 ข้อมูลชนิด Tuple
- ตอนที่ 88 การเข้าถึงข้อมูลใน Tuple
- ตอนที่ 89 การแก้ไขข้อมูลใน Tuple
- ตอนที่ 90 การแยกข้อมูลใน Tuple
- ตอนที่ 91 เข้าถึงข้อมูลใน Tuple ด้วยลูป
- ตอนที่ 92 การรวม Tuple เข้าด้วยกัน
- ตอนที่ 93 เมธอด count()
- ตอนที่ 94 เมธอด index()
- ตอนที่ 95 ข้อมูลประเภท Set
- ตอนที่ 96 การเข้าถึงข้อมูลใน Set
- ตอนที่ 97 การเพิ่มข้อมูลใน Set
- ตอนที่ 98 การลบข้อมูลใน Set
- ตอนที่ 99 การเข้าถึงข้อมูลใน Set ด้วยลูป for
- ตอนที่ 100 การจอย Join ข้อมูลใน Set
- ตอนที่ 101 เมธอด add()
- ตอนที่ 102 เมธอด clear()
- ตอนที่ 103 เมธอด copy()
- ตอนที่ 104 เมธอด difference()
- ตอนที่ 105 เมธอด difference_update()
- ตอนที่ 106 เมธอด discard()
- ตอนที่ 107 เมธอด intersection()
- ตอนที่ 108 เมธอด intersection_update()
- ตอนที่ 109 เมธอด isdisjoint()
- ตอนที่ 110 เมธอด issubset()
- ตอนที่ 111 เมธอด issuperset()
- ตอนที่ 112 เมธอด pop()
- ตอนที่ 113 เมธอด remove()
- ตอนที่ 114 เมธอด symmetric_difference()
- ตอนที่ 115 เมธอด symmetric_difference_update()
- ตอนที่ 116 เมธอด union()
- ตอนที่ 117 เมธอด update()
- ตอนที่ 118 ข้อมูลประเภท Dictionary
- ตอนที่ 119 การเข้าถึงข้อมูลใน Dictionary
- ตอนที่ 120 การเปลี่ยนแปลงข้อมูลใน Dictionary
- ตอนที่ 121 การเพิ่มข้อมูลใน Dictionary
- ตอนที่ 122 การลบข้อมูลใน Dictionary
- ตอนที่ 123 การวนลูปเข้าถึงสมาชิกใน Dictionary
- ตอนที่ 124 การคัดลอก Dictionary
- ตอนที่ 125 Dictionary ซ้อนกัน
- ตอนที่ 126 เมธอด clear()
- ตอนที่ 127 เมธอด copy()
- ตอนที่ 128 เมธอด fromkeys()
- ตอนที่ 129 เมธอด get()
- ตอนที่ 130 เมธอด items()
- ตอนที่ 131 เมธอด keys()
- ตอนที่ 132 เมธอด pop()
- ตอนที่ 133 เมธอด popitem()
- ตอนที่ 134 เมธอด setdefault()
- ตอนที่ 135 เมธอด update()
- ตอนที่ 136 เมธอด values()
- ตอนที่ 137 การตรวจสอบเงื่อนไขด้วย If statement
- ตอนที่ 138 การใช้ while loop