ดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

วิธีสร้าง Module library ในภาษา Python

          ใครที่เคยเขียนภาษา Python น่าจะรู้จักกันดีในการเรียกใช้ module หรือ library เพื่อที่จะนำมาใช้งานของเรา ซึ่งเราสามารถสร้างมันเข้ามาเองได้ ก่อนอื่นเรามันทำความรู้กันก่อนว่าคือนะครับ

          Python คือ ภาษาที่ใช้เขียนโปรแกรมเพื่อสื่อสารกับคอมพิวเตอร์เป็นภาษาที่มีประสิทธิภาพมากกว่าภาษาอื่นๆ ยังเป็นภาษาที่ Open source ถูกพัฒนาขึ้นมาโดยไม่ยึดติดกับแพลตฟอร์ม

          Module คือ กลุ่มของ ตัวแปล ฟังก์ชั่น หรือ คลาส ที่ทำงานคล้ายๆ กันแล้วเอามารวมๆ กันไว้ในไฟล์ไฟล์เดียว ในไพทอน เวลาเราจะเรียกใช้ โมดูลเราต้อง import โมดูลเข้ามาก่อน ถึงจะสามารถเรียกใช้งาน ฟังก์ชั่น หรือ คลาสที่อยู่ ภายในโมดูลได้

          Library คือ การรวม function มาอำนวยความสะดวกต่างๆ เช่น เรามีฟังก์ชั่นที่เขียนเองเอาไว้อำนวยความสะดวก เราสามารถทำการเรียกมาใช้ใหม่ได้อีก สามารถทำให้การเขียนโปรแกรมสะดวกและรวดเร็วขึ้น

          ก็ได้ทำความรู้จักข้อมูลที่เกี่ยวข้องกับการสร้าง module ขึ้นมาใช้เองกันแล้วนะครับ ก็มาถึงขั้นตอนสร้างนะครับ ในการสร้างโปรเจคขึ้นมา 1 โปรเจค ในโปรเจคจะต้องสร้าง ไฟล์ที่จะเก็บไฟล์พวก init และ module หรือ function ของเราขึ้นก่อน

ตัวอย่าง

 การสร้างไฟล์ init

 

ผลที่ได้ก็จะมีโฟรเดอร์สร้างขึ้นมาและไฟล์ init

ไฟล์ init ที่สร้างขึ้น

 

จากนั้นให้เราสร้าง ไฟล์ module ขึ้นมา ในโฟรเดอร์ testmodule โดยไปที่

การสร้างไฟล์ python ชื่อ modulesum

 

ผลที่ได้ก็มีไฟล์ modulesum

ผลการสร้างไฟล์ python ชื่อ modulesum

 

จากให้พิมพ์คำสั่ง ลงในไฟล์ modulesum.py

class numbersum:
    def __init__(self, num,num2):
        self.number = num
        self.number2=num2

    def sum(self):
        number = self.number
        number2 = self.number2
        sum = number+number2

        return sum

 

จากนั้น ในไฟล์ init ให้เราทำการ import ไฟล์และ class ที่ไฟล์ module

from modulesum import numbersum

 

ในสร้างไฟล์ขึ้นมาข้างนอกโฟรเดอร์ เพื่อที่จะทดสอบ module ที่เราทำขึ้นมา

สร้างไฟล์ python ที่ใช้สำหรับทดสอบ

 

แล้วลองเรียกใช้ module โดยใช้คำสั่ง 

from testmodule import numbersum

num, num2 = 20,17
sum = numbersum(num,num2)

print sum.sum()

 

ผลได้คือ 

 ผลในการทดสอบ library ที่สร้างขึ้นมา

 

          จากวิธีการสร้างตัว module ด้านบน สามารถนำไปใช้ได้จริงและนำไปต่อยอดได้สามารถเขียนฟังก์ชั่นอื่นมาใส่ได้และจะเป็นประโยชน์ในการเขียนและพัฒนาโปรแกรมต่อไป สามารถช่วยให้เร็วและสะดวกมากยิ่งขึ้น

 

 

อ้างอิง

Watsan Homsin.(2015).Modules Aug 13, 2019, from http://marcuscode.com/lang/python/modules

Digitalocean.(2016).How to write modules in python3 Aug 13, 2019, from https://www.digitalocean.com/community/tutorials/how-to-write-modules-in-python-3

Learnpython.(2015).Modules and packages Aug 13, 2019, from https://www.learnpython.org/en/Modules_and_Packages

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ตัวช่วยในการคำนวณแคลอรี่สำหรับผู้ที่รักการออกกำลังกาย
โดย prmindphp ส 18 ม.ค. 2020 11:50 am บอร์ด MindPHP News & Feedback
0
171
ส 18 ม.ค. 2020 11:50 am โดย prmindphp
เราจะเก็บรูปข้อมูลของรูปลง database เราจะใช้ data type อะไรครับ
โดย benzas00123 ส 18 ม.ค. 2020 11:31 am บอร์ด SQL - Database
2
172
ส 18 ม.ค. 2020 1:17 pm โดย benzas00123
อยากทราบวิธีการแก้ไขปัญหาการ อัพโหลดไฟล์ excel แล้วไม่รองรับภาษาไทย
โดย Ittichai_chupol ศ 17 ม.ค. 2020 5:58 pm บอร์ด Programming - PHP
7
111
จ 20 ม.ค. 2020 2:05 pm โดย saravana
ต้องการนับจำนวนอักษรเเละตัดอักษรที่เกิน มีปัญหากับภาษาไทย
โดย thatsawan ศ 17 ม.ค. 2020 5:18 pm บอร์ด Programming - C/C++ & java & Python
0
29
ศ 17 ม.ค. 2020 5:18 pm โดย thatsawan
สอบถามครับ ลูปค่าออกมาแล้วต้องการให้มันเก็บค่าในตัวแปร ต้องทำยังไงครับ
โดย chatee supasand ศ 17 ม.ค. 2020 3:51 pm บอร์ด Programming - C/C++ & java & Python
3
105
ศ 17 ม.ค. 2020 5:19 pm โดย thatsawan
อยากทราบวิธีก่ารเปิด exe ใน ubutu เวอชั่น 14
โดย Ittichai_chupol ศ 17 ม.ค. 2020 2:33 pm บอร์ด Programming - PHP
2
137
ศ 17 ม.ค. 2020 4:14 pm โดย Ittichai_chupol
วิธีการสร้างระบบชำระเงินด้วย omise โดยใช้ php
โดย Ittichai_chupol พฤ 16 ม.ค. 2020 6:53 pm บอร์ด PHP Knowledge
0
82
พฤ 16 ม.ค. 2020 6:53 pm โดย Ittichai_chupol
Pillow library กับการ เปลี่ยนนามสกุล img ทีเดียวหลายๆ file
โดย benzas00123 พฤ 16 ม.ค. 2020 5:45 pm บอร์ด Python Knowledge
0
29
พฤ 16 ม.ค. 2020 5:45 pm โดย benzas00123
Pillow library ในการจัดการและประมวลผลรูปภาพ
โดย benzas00123 พฤ 16 ม.ค. 2020 5:04 pm บอร์ด Python Knowledge
0
83
พฤ 16 ม.ค. 2020 5:04 pm โดย benzas00123
ความแตกต่างระหว่าง visibility: hidden; กับ display: none;
โดย Ittichai_chupol พ 15 ม.ค. 2020 6:44 pm บอร์ด CSS Knowledge
0
115
พ 15 ม.ค. 2020 6:44 pm โดย Ittichai_chupol
ตัวอย่าง การ Query ข้อมูลทีเป็นที่ได้ผลการค้นหา
โดย mindphp พ 15 ม.ค. 2020 6:40 pm บอร์ด Programming - C/C++ & java & Python
0
50
พ 15 ม.ค. 2020 6:40 pm โดย mindphp
สอบถามครับ ทำไมสร้างตารางฐานข้อมูลแล้ว มันไม่ใน ใน pg
โดย chatee supasand พ 15 ม.ค. 2020 5:55 pm บอร์ด Programming - C/C++ & java & Python
4
56
พ 15 ม.ค. 2020 6:07 pm โดย thatsawan
ขอสอบถาม error ของ flask ครับ
โดย benzas00123 พ 15 ม.ค. 2020 10:44 am บอร์ด Programming - C/C++ & java & Python
4
57
พ 15 ม.ค. 2020 10:53 am โดย benzas00123
สอบถาม code ของ Flask หน่อยครับว่ามันเอาไว้ใช้ทำอะไร
โดย benzas00123 อ 14 ม.ค. 2020 4:50 pm บอร์ด Programming - C/C++ & java & Python
3
78
พ 15 ม.ค. 2020 5:54 am โดย mindphp
วิธีการเพิ่มส่วนการแสดงในหน้าสมัครสมาชิกของ เว็บบอร์ด phpbb
โดย Ittichai_chupol อ 14 ม.ค. 2020 3:19 pm บอร์ด PHP Knowledge
0
65
อ 14 ม.ค. 2020 3:19 pm โดย Ittichai_chupol
อยากทราบวิธีการแก้ไขปัญหา การเปิดใช้งาน xampp
โดย Ittichai_chupol อ 14 ม.ค. 2020 11:11 am บอร์ด Programming - PHP
6
2292
อ 14 ม.ค. 2020 3:20 pm โดย Ittichai_chupol
การแปลงข้อมูลที่ดึงมาจาก database ที่เป็น list ให้เป็น string เพื่อนำมาใช้ประโยชน์ในด้านต่างๆ
โดย benzas00123 จ 13 ม.ค. 2020 5:34 pm บอร์ด Python Knowledge
0
43
จ 13 ม.ค. 2020 5:34 pm โดย benzas00123
การใช้ os.walk ในการหานามสกุลไฟล์ที่ต้องการทั้งหมดที่อยู่ใน Project
โดย benzas00123 จ 13 ม.ค. 2020 3:09 pm บอร์ด Python Knowledge
0
58
จ 13 ม.ค. 2020 3:09 pm โดย benzas00123
ปฏิทินประจําปี 2563 ธีมรูปแบบญี่ปุ่น
โดย noppadonsk จ 13 ม.ค. 2020 2:32 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
101
จ 13 ม.ค. 2020 2:32 pm โดย noppadonsk
ขอสอบถามวิธํีการ split tuple หน่อยครับ
โดย benzas00123 จ 13 ม.ค. 2020 11:17 am บอร์ด Programming - C/C++ & java & Python
7
63
จ 13 ม.ค. 2020 12:11 pm โดย benzas00123