Python – Nested Dictionary

Python – Nested Dictionary ชุดข้อมูลชนิดดิกชันนารีที่มีข้อมูลชนิดดิกชันนารีซ้อนอยู่ภายใน(nested dictionary) คือการที่มีการเก็บข้อมูลในรูปแบบชุดข้อมูลชนิดดิกชันนารีอยู่แล้ว และยังมีชุดข้อมูลชนิดดิกชันนารีเป็นข้อมูลย่อยซ้อนอยู่ภายใน เพื่อประกอบกันเป็นชุดข้อมูลชนิดดิกชันนารีที่บรรจุข้อมูลทั้งหมดเพียงแค่ตัวเดียว จากในบทที่แล้วที่ได้พูดถึงการใช้งานชุดข้อมูลชนิดดิกชันนารีโดยใช้ตัวอย่างเป็นชุดข้อมูลของหนังสือเล่มหนึ่ง เราจะยังคงใช้ข้อมูลดังกล่าวในตัวอย่างของบททนี้ โดยจะมีการปรับข้อมูลให้มีรายละเอียดเพิ่มขึ้นสำหรับข้อมูลที่เป็นชื่อของบุคคลทุกชื่อที่มีอยู่ในชุดข้อมูล ให้กลายเป็นชุดข้อมูลชนิดดิกชันนารีแทนที่จะเป็นข้อมูลเดี่ยวเช่นข้อมูลชนิดข้อความ(string) โดยชุดข้อมูลของแต่ละบุคคลจะประกอบด้วยข้อมูลของ ชื่อ(name), วันเกิด(birthday), อีเมลล์(email) * เนื่องจากข้อมูลอีเมลล์ของผู้แปลและอีเมลล์ผู้วาดภาพประกอบเป็นข้อมูลไม่มีอยู่ในข้อมูลจริงในข้อมูลอ้างอิง จึงขอใช้ข้อมูลตัวอย่างแทนสำหรับเนื้อหาในบทนี้ โดยกำหนดให้ ข้อมูลตัวอย่างอีเมลล์ของผู้แปลเป็น “i_am_translator@example.com” ข้อมูลตัวอย่างอีเมลล์ผู้วาดภาพประกอบเป็น “i_am_illustrator@example.com” ข้อมูลเดิม ชื่อหนังสือ(name) เลข isbn(isbn) ชื่อผู้แต่ง(author) ชื่อผู้วาดภาพประกอบ(illustrator) ชื่อผู้แปล(translator) น้ำหนัก(weight) ขนาด(size) สำนักพิมพ์(publisher) วันที่จัดพิมพ์(publish_date) จำนวนหน้า(pages) ประเภทหนังสือ(category) ราคา(price) ข้อมูลใหม่ ชื่อหนังสือ(name) เลข isbn(isbn) ข้อมูลผู้แต่ง(author) ชื่อ(name) วันเกิด(birthday) อีเมลล์(email) ข้อมูลผู้วาดภาพประกอบ(illustrator) ชื่อ(name) วันเกิด(birthday) อีเมลล์(email) ข้อมูลผู้แปล(translator) ชื่อ(name) วันเกิด(birthday) อีเมลล์(email) Read more about Python – Nested Dictionary[…]

Python – Dictionary

Python – Dictionary การเก็บชุดข้อมูลชนิดดิกชันนารี การเก็บชุดข้อมูลชนิดดิกชันนารี(Dictionary) เป็นการเก็บชุดข้อมูลในรูปแบบหนึ่ง ซึ่งข้อมูลภายในชุดข้อมูลไม่มีการเรียงลำดับ จะมีความแตกต่างจากรูปแบบการเก็บชุดข้อมูลแบบอื่นๆ โดยการเก็บข้อมูลแบบอื่นเช่นลิสต์(list), เซต(set) นั้น เราจะทำเพียงเก็บค่าของข้อมูลนั้นๆ เอาไว้เช่น ลิสต์ของข้อมูลอุณหภูมิ, เซตของข้อมูลชื่อผลไม้ แต่สำหรับชุดข้อมูลชนิดดิกชันนารี่ ข้อมูลหนึ่งนั้นจะประกอบไปด้วยชื่อข้อมูล(key)ไว้สำหรับอ้างอิงข้อมูล และ ค่าของข้อมูล(value) ถูกเก็บอยู่ด้วยกัน เนื่องการเก็บชุดข้อมูลชนิดดิกชันนารี(Dictionary) ในข้อมูลแต่ละตัวจะมีทั้งชื่อข้อมูล(key)และค่าของข้อมูล(value) ทำให้ชนิดข้อมูลชนิดนี้มีคุณสมบัติที่ทำให้สามารถค้นหาข้อมูลที่ต้องการโดยอ้างถึงจากชื่อข้อมูล(key)นั้นได้ด้วย ตัวอย่างข้อมูล เป็นชุดข้อมูลชนิดดิกชันนารีสำหรับเก็บข้อมูลหนังสือเล่มหนึ่ง โดยเมื่อทำการออกแบบระบบสำหรับเก็บข้อมูลและทำการระบุคุณลักษณะข้อมูล จะได้รูปแบบข้อมูลหนังสือแต่ละเล่มมีคุณลักษณะดังนี้: ชื่อหนังสือ(name) เลข isbn(isbn) ชื่อผู้แต่ง(author) ชื่อผู้วาดภาพประกอบ(illustrator) ชื่อผู้แปล(translator) น้ำหนัก(weight) ขนาด(size) สำนักพิมพ์(publisher) วันที่จัดพิมพ์(publish_date) จำนวนหน้า(pages) ประเภทหนังสือ(category) ราคา(price) ซึ่งเมื่อต้องการสร้างชุดข้อมูลชนิดดิกชันนารีเพื่อระบุข้อมูลของหนังสือเล่มหนึ่ง จะได้เป็นรูปแบบของชุดข้อมูลชนิดดิกชันนารีดังนี้ # -*- coding: utf-8 -*- import json # สร้างฟังก์ชันสำหรับปรินต์ค่าชุดข้อมูลชนิดดิกชันนารี def print_dictionary(data): # ทำการปรินต์ค่า Read more about Python – Dictionary[…]

Python – Set

Python – Set การเก็บข้อมูลชนิดเซต เซต(Set) เป็นรูปแบบของการเก็บข้อมูลชนิดหนึ่ง โดยจะมีการเก็บข้อมูลเป็นกลุ่มของข้อมูล ซึ่งภายในกลุ่มนี้จะไม่มีลำดับของข้อมูล เนื่องจากเป็นกลุ่มข้อมูลที่ไม่มีลำดับของข้อมูลสำหรับอ้างอิง ดังนั้นข้อมูลแต่ละตัวจึงจำเป็นต้องไม่ซ้ำกันและข้อมูลแต่ละตัวภายในเซตนั้นจะทำการเปลี่ยนแปลงไม่ได้ แต่ตัวเซตของกลุ่มข้อมูลนั้นสามารถทำการเปลี่ยนแปลงได้โดยการเพิ่มข้อมูลหรือลบข้อมูลออก เราสามารถใช้ข้อมูลชนิดเซตเพื่อดำเนินการต่างๆ เช่น การรวมข้อมูล(union), การเลือกข้อมูลที่ซ้ำกัน(intersection), การเลือกข้อมูลเฉพาะข้อมูลที่ต่างจากอีกกลุ่มข้อมูล(difference), การเลือกข้อมูลจากทุกเซตเฉพาะข้อมูลที่เซตนั้นๆ มีแตกต่างจากเซตอื่น(symmetric difference), etc. วิธีการสร้างเซตของข้อมูล เราสามารถสร้างเซตของข้อมูลโดยการนำข้อมูลทั้งหมดมาวางไว้ภายในเครื่องหมาย {} แล้วทำการแยกข้อมูลแต่ละตัวด้วยเครื่องหมาย “,” หรืออาจจะสร้างข้อมูลประเภทนี้โดยใช้ฟังก์ชัน set() ในการสร้างข้อมูล กลุ่มข้อมูลในเซตนั้นไม่ได้มีการจำกัดจำนวนและยังสามารถบรรจุข้อมูลได้หลายชนิดภายในเซตเดียวกัน เช่น ตัวเลขจำนวนเต็ม(integer), ตัวเลขทศนิยม(float), tuple, ข้อความ(string), etc. แต่ข้อมูลที่บรรจุภายในเซตนั้นไม่สามารถบรรจุข้อมูลประเภทที่แก้ไขข้อมูลได้(mutable) เช่น ลิสต์(list), เซต(set) หรือ ดิกชันนารี(dictionary) การสร้างเซตของข้อมูลโดยใช้เครื่องหมาย {} เราสามารถสร้างเซตของข้อมูลโดยการนำข้อมูลทั้งหมดมาวางไว้ภายในเครื่องหมาย {} แล้วทำการแยกข้อมูลแต่ละตัวด้วยเครื่องหมาย “,” ตัวอย่างการใช้งาน # กำหนดตัวแปรชนิดเซต เพื่อทำการเก็บข้อมูลชื่อผลไม้ โดยข้อมูลภายใน # เป็นข้อมูลประเภทข้อความ(string) fruits Read more about Python – Set[…]

Python – String

Python – String string คือชุดของอักขระที่ถูกนำมาจัดกลุ่มเพื่อใช้งานร่วมกัน โดยกลุ่มอักขระดังกล่าวอาจประกอบกันกลายเป็นประโยค วลี หรือกลุ่มคำที่มีหรือไม่มีความหมายก็เป็นได้ ถ้าแปลตรงตัว string ในภาษาไทยจะแปลได้ว่า สายอักขระ(อ้างอิง) ในบทนี้จะเรียกข้อมูลชนิดนี้ว่าข้อความ(string) ซึ่งอาจจะมีความหมายไม่ตรงนัก แต่เพื่อให้เข้าใจง่ายขึ้นและมองเห็นภาพชัดขึ้นเมื่อกล่าวถึงข้อมูลชนิดนี้ ภาษาที่ใช้ในคอมพิวเตอร์ ไม่ได้ทำงานจากภาษาของอักขระโดยตรง แต่จะทำงานร่วมกันคำสั่งหรือข้อมูลที่ถูกแปรผลเป็นไบนารี่ ถึงแม้เราอาจจะเห็นข้อมูลที่เราพิมพ์ลงไปอยู่ในรูปอักขระบนหน้าจอคอมพิวเตอร์ แต่ระบบภายในนั้น จะต้องแปรผลให้เป็นข้อมูลในรูปไบนารี่ 0, 1 เพื่อจะทำงานร่วมกับคอมพิวเตอร์ต่อไปได้ การแปลภาษาจากอักขระไปเป็นข้อมูลที่คอมพิวเตอร์สามารถเข้าใจเราอาจะเรียกได้ว่าการ encoding และในทางกลับกันการแปรผลกลับจากข้อมูลในภาษาคอมพิวเตอร์ กลับเป็นอักขระเรียกว่าการ decoding โดยการ encoding ที่นิยมใช้กันจะเป็น “ASCII” และ “unicode” สำหรับข้อความที่ใช้ใน python นั้น จะเป็นลำดับข้อมูลในรูปแบบของ unicode character ซึ่งรองรับการทำงานร่วมกับอักขระในหลายภาษาให้ทำงานร่วมกันได้ การสร้างข้อมูลชนิดข้อความ(string) การสร้างข้อมูลชนิดข้อความ(string) นี้จะเป็นการใช้ชุดของอักขระ แล้วครอบไว้ด้วยเครื่องหมาย single quote(‘), double qoute(“) หรือ triple quote(”’) โดย triple Read more about Python – String[…]