Python – packages

Python – packages การจัดเก็บข้อมูลลงคอมพิวเตอร์ก็เหมือนการจัดเก็บข้อมูลในรูปแบบอื่น เมื่อมีข้อมูลเยอะขึ้น มีทรัพยากรเยอะขึ้น เราก็จำเป็นต้องมีการจัดหมวดหมู่ของข้อมูลให้เป็นระเบียบ เพื่อที่จะช่วยให้เราสามารถทำงานได้สะดวกและรวดเร็วขึ้น การจัดหมวดหมู่และแยกย่อยไฟล์ที่เรามีอยู่ ทำให้เราสามารถสืบค้นไฟล์เหล่านั้นได้รวดเร็วขึ้นและไม่จำเป็นต้องเสียเวลาในการสร้างข้อมูลใหม่หากมีข้อมูลดังกล่าวจัดเก็บอยู่แล้ว เมื่อเราจะต้องทำการจัดระเบียบข้อมูล เราก็สามารถเริ่มต้นจากทำการจัดรูปแบบโดยการจัดกลุ่มของไฟล์แยกย่อยเป็นโฟลเดอร์และภายในโฟลเดอร์ดังกล่าวก็อาจจะมีไฟล์หรือโฟลเดอร์อื่นๆ ซ้อนกันไปเรื่อยๆ ตามความเกี่ยวเนื่องกันของข้อมูล สำหรับไฟล์ที่ทำงานในลักษณะใกล้เคียงกันก็ถูกจัดวางไว้ในโฟลเดอร์เดียวกัน ตัวอย่างเช่น เราเก็บไฟล์ที่บันทึกรูปภาพไว้ในโฟลเดอร์ชื่อว่า “pictures” และภายในโฟลเดอร์ดังกล่าวเราอาจจะมีโฟลเดอร์ย่อย ที่ระบุชื่อปีที่ทำการบันทึกรูปภาพ pictures —-2012 ——–January ————IMG_0001.JPG ————IMG_0002.JPG ————IMG_0003.JPG ————IMG_0004.JPG ————IMG_0005.JPG ——–February ——–March ——–April —-2013 —-2014 —-2015 โดยจากตัวอย่าง จะทำการจัดเก็บไฟล์รูปภาพไว้ในโฟลเดอร์ pictures โดยในโฟลเดอร์ pictures นั้นก็สร้างโฟลเดอร์ย่อยโดยแยกรูปภาพตามปีคริสตศักราช(ค.ศ.) และในโฟลเดอร์ย่อยนั้น ข้อมูลรูปภาพแต่ละปีก็ยังแยกย่อยการเก็บข้อมูลรูปภาพ ตามเดือนที่ภาพถูกบันทึกไว้ จากการจัดเก็บข้อมูลในคอมพิวเตอร์ ด้วยรูปแบบเดียวกันนี้ เรานำวิธีดังกล่าวมาใช้จัดการ “package” ใน python ยิ่งโปรแกรมมีความสามารถมากขึ้นและทำงานซับซ้อนขึ้น จำนวนคำสั่ง, ตัวแปร, ฟังก์ชันและจำนวนไฟล์ที่บรรจุคำสั่งก็จะมีจำนวนมากขึ้นตามไปด้วย การจัดกลุ่มไฟล์ที่บรรจุคำสั่งออกเป็นโฟลเดอร์ย่อยๆ ตามลักษณะการทำงานนั้น Read more about Python – packages[…]

Python – modules

Python – modules ในการออกแบบโปรแกรมที่มีขนาดใหญ่ขึ้น การจัดระบบของตัวแปร, คำสั่ง, ฟังก์ชันให้อยู่ในรูปแบบที่สืบค้นได้สะดวกนั้นก็มีส่วนสำคัญ การแยกส่วนต่างๆ ของการทำงานที่ซับซ้อนออกเป็นส่วนย่อยๆ แล้วจัดกลุ่มการทำงานเหล่านั้นให้เหมาะสม จะทำให้ลดความซ้ำซ้อนในการเขียนโปรแกรมและใช้เวลาน้อยในการสืบค้นชุดคำสั่งที่ทำงานแบบเดียวกัน โมดูล(modules) ใช้อ้างถึงไฟล์ที่บรรจุชุดคำสั่ง ซึ่งชุดคำสั่งเหล่านั้นจะถูกรวบรวมไว้ให้อยู่ในที่เดียวกันเพื่อทำงานและเพื่อประมวลผลร่วมกัน ตัวอย่างเช่น ทำการสร้างไฟล์ที่ชื่อ “degree_converter.py” เพื่อให้ไฟล์ดังกล่าวทำการรวบรวมคำสั่งและฟังก์ชันสำหรับทำการแปลงข้อมูลอุณหภูมิในหน่วยต่างๆ โดยไฟล์ดังกล่าวนั้นสามารถจัดเป็นหนึ่งโมดูลได้ โดยชื่อของโมดูลก็คือ “degree_converter” ชื่อเดียวกับชื่อไฟล์ การที่เราทำการแบ่งโปรแกรมใหญ่ออกเป็นโมดูลย่อยๆ ทำให้เราสามารถจัดกลุ่มฟังก์ชันเหล่านั้น ให้การทำงานประเภทเดียวกันอยู่ในกลุ่มเดียวกัน การจัดระเบียบดังกล่าวนั้น นอกจากจะทำให้ผู้พัฒนาเอง สามารถค้นหาคำสั่งหรือฟังก์ชันที่ต้องการเรียกใช้ได้ง่ายและเร็วขึ้นแล้ว ยังทำให้สามารถสามารถนำเข้าโมดูลและจะเรียกใช้ฟังก์ชันเหล่านั้นซ้ำได้เรื่อยๆ โดยไม่ต้องเขียนฟังก์ชันหรือคำสั่งแบบเดิมซ้ำใหม่ทุกครั้ง โดยเราสามารถจะประกาศชุดฟังก์ชันที่ใช้บ่อยๆ ลงในโมดูล และเมื่อต้องการใช้โมดูลเหล่านั้นก็สามารถที่จะใช้คีย์เวิร์ด import เพื่อนำเข้าโมดูลนั้นและเรียกใช้ตัวแปรหรือฟังก์ชันที่มีโดยไม่ต้องทำการเขียนชุดฟังก์ชันดังกล่าวซ้ำลงไปใหม่ในโปรแกรมใหม่ที่เราสร้างขึ้นมา ตัวอย่างการเรียกใช้งานโมดูลทั่วไป สร้างโมดูลสำหรับแปลงอุณหภูมิ โดยสร้างไฟล์ “degree_converter.py” #!/usr/bin/env python # -*- coding: utf-8 -*- #ฟังก์ชันสำหรับแปลงอุณหภูมิจากหน่วยองศาเซลเซียสเป็นองศาฟาเรนต์ไฮต์ def convert_temperature_to_fahrenheit(degree_celcius): degree_fahrenheit = degree_celcius * (9.0/5.0) + Read more about Python – modules[…]

Python – คีย์เวิร์ด global

Python – คีย์เวิร์ด global เราใช้คีย์เวิร์ด global เพื่ออนุญาติให้สามารถทำการเปลี่ยนแปลงค่าตัวแปรที่อยู่ด้านนอกข้อมูลใน scope ปัจจุบัน จะถูกใช้สำหรับสร้าง global variables และเปลี่ยนค่าตัวแปรใน local context กฏการใช้คีย์เวิร์ด global เมื่อสร้างตัวแปรขึ้นภายในฟังก์ชัน ตัวแปรนั้นจะเป็น local variable โดยอัตโนมัติ เมื่อสร้างตัวแปรขี้นนอกฟังก์ชัน ตัวแปรนั้นจะเป็น global variable โดยอัตโนมัติ โดยไม่ต้องใช้คีย์เวิร์ด global จำเป็นต้องใช้คีย์เวิร์ด global เมื่อต้องการทั้งอ่าน/เขียน ตัวแปร global ภายในฟังก์ชัน หากใช้คีย์เวิร์ด global ภายนอกฟังก์ชัน จะไม่มีผลใดๆ เพิ่มเติม การใช้คีย์เวิร์ด global ตัวอย่างการใช้งาน การเรียกดูของมูล global variable จากภายในฟังก์ชัน # สร้างฟังก์ชันสำหรับคำนวณหาระยะทางที่วัตถุเคลื่อนที่ไป โดยทราบความเร็วคงที่ของวัตถุ และระยะเวลาที่ใช้ในการเดินทาง(ในกรณีที่วัตถุดังกล่าวไม่เคลื่อนที่โดยมีความเร่ง) อ้างอิงจากสมการ s = v Read more about Python – คีย์เวิร์ด global[…]

Python – การใช้งาน global, local, nonlocal

Python – การใช้งาน global, local, nonlocal รู้จักกับ Global Variables โดยทั่วไปแล้วตัวแปรที่ประกาศภายนอกฟังก์ชันหรือใน global scope จะเรียกตัวแปรนั้นว่าเป็น global variable และขอบเขตที่สามารถจะเรียกใช้ตัวแปรนี้ จะถูกเรียกดูข้อมูลได้ทั้งภายในและภายนอกฟังก์ชัน แต่จะสามารถแก้ไขตัวแปรนี้ได้ใน global scope เท่านั้นไม่สามารถทำการแก้ไขได้ภายในฟังก์ชันได้ ตัวอย่างการใช้งาน # ฟังก์ชันสำหรับคำนวณเลขยกกำลัง # ตัวอย่างเช่น 10^3 = 10 x 10 x 10 def calculate_power(power): total = 1 for i in range(1, power+1): total *= base return total # กำหนดค่าของฐานเป็น 10 ซึ่งตัวแปร base เป็น global Read more about Python – การใช้งาน global, local, nonlocal[…]

Python – Anonymous function

Python – Anonymous function anonymous ฟังก์ชัน คือฟังก์ชันที่ประกาศขึ้นมาโดยไม่ทำการระบุชื่อของฟังก์ชันในการเรียกใช้งาน สำหรับการประกาศฟังก์ชันโดยทั่วไปต้องระบุคีย์เวิร์ด def ไว้หน้าชื่อของฟังก์ชัน เช่น def calculate_price: แต่สำหรับฟังก์ชันแบบ anonymous นั้น จะระบุการประกาศฟังก์ชันโดยใช้คีย์เวิร์ด lambda แทน เราจึงสามารถเรียกฟังก์ชันแบบนี้ว่า lambda ฟังก์ชันได้เช่นเดียวกัน โครงสร้างการใช้งาน anonymous ฟังก์ชัน lambda <ตัวแปร1, ตัวแปร2 …>: <ประโยคคำสั่งของฟังก์ชัน> การสร้างฟังก์ชัน anonymous(lambda ฟังก์ชัน)นี้ เราสามารถทำการกำหนดข้อมูลตัวแปรที่ส่งเข้าไปกี่ตัวก็ได้ขึ้นอยู่กับจุดประสงค์การทำงานของฟังก์ชันที่เราเขียนขึ้นมา แต่สามารถระบุ ประโยคคำสั่ง ได้แค่คำสั่ง(expression)เดียวเท่านั้น โดยโปรแกรมจะทำการประมวลผลข้อมูลที่ป้อนเข้าไปด้วยคำสั่งที่กำหนด แล้วจึงคืนผลลัพท์ออกมา ตัวอย่างการใช้งานของฟังก์ชัน lambda # สร้าง anonymous ฟังก์ชันสำหรับแปลงข้อมูลในหน่วยเซนติเมตร เป็นหน่วยฟุต length_in_foot = lambda length_in_cm: length_in_cm * 0.032808 # กำหนดความยาวในหน่วยเซนติเมตร Read more about Python – Anonymous function[…]