Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python
Python
  1. รวมโมดูล Python หลายตัวในไฟล์เดียว (ไม่ได้ปกติ)

    ไม่สามารถรวมโมดูลหลายไฟล์เป็นไฟล์เดียวได้โดยตรง เพราะ Python Import Mechanism ใช้ File System (ไฟล์/โฟลเดอร์) ทางเลือกเมื่อไม่มีสิทธิ์ติดตั้ง 1. ใช้ sys.path ชี้ไปโฟลเดอร์ Local >>> import os, sys >>> file_path = AdditionalModules/ >>> sys.path.append(os.path.dirname(fil

  2. Dynamic Import โมดูล Python ด้วย importlib (สรุป)

    ใช้ importlib.import_module(module_name) โดย module_name เป็น String Import เดี่ยว >>> from importlib import import_module >>> module_name = os >>> globals()[module_name] = import_module(module_name) Import หลายตัวจาก List >>> import importlib >>> modn

  3. Best Practice: จัดโครงสร้าง Python Module/Package ให้ดี

    อ้างอิง samplemod ของ Kenneth Reitz (สร้าง Requests) โครงสร้างมาตรฐาน README.rst LICENSE setup.py requirements.txt sample/ __init__.py core.py helpers.py docs/ conf.py index.rst tests/ test_basic.py test_advanced.py คำอธิบายแต่ละไฟล์/โฟลเดอร์ ไฟล์/โฟลเดอร์หน้าที่

  4. วิธีติดตั้งโมดูล Python บน Mac ที่เข้ากันได้ดีที่สุด

    บน macOS มีหลายทางเลือก แนะนำตามลำดับ: 1. ใช้ pip (มาตรฐาน ข้าม Platform ได้) # ตรวจสอบ pip pip install -U pip setuptools # หรือติดตั้ง pip ใหม่ curl https://bootstrap.pypa.io/get-pip.py | python 2. Homebrew (สำหรับ System-level Tools) $ brew install python # ติดตั้ง Python 3 + pip $ pip install

  5. Import โมดูล Python ใน For Loop แบบ Dynamic

    Import หลายโมดูลจาก List ของชื่อ String ใช้ importlib.import_module() ตัวอย่าง >>> import importlib >>> modnames = [os, sys, math] >>> for lib in modnames: ... globals()[lib] = importlib.import_module(lib) คำอธิบาย globals() คืน Dictionary ของ Global Namespace Set

  6. ติดตั้งโมดูล Python โดยไม่มี Root Access

    เมื่อไม่มีสิทธิ์ Root/Admin ใช้ 2 วิธีหลัก: 1. ใช้ sys.path ชี้ไปโฟลเดอร์ Local >>> import os, sys >>> file_path = AdditionalModules/ >>> sys.path.append(os.path.dirname(file_path)) วางโมดูลใน AdditionalModules/ แล้ว Import ได้ปกติ 2. ใช้ Virtualenv (แนะนำ) $ virtualenv

  7. ติดตั้ง libxml2 พร้อม Python Bindings บน macOS (Homebrew)

    ใช้ Homebrew ติดตั้ง Python และ libxml2/libxslt พร้อม Python Bindings คำสั่งติดตั้ง $ brew install --framework python $ brew install --with-python libxml2 $ brew install --with-python libxslt $ brew link libxml2 --force $ brew link libxslt --force หากติดตั้งผิดพลาด ต้อง Uninstall ก่อน $ brew unli

  8. โมดูล Python เก็บอยู่ที่ไหน? (sys.path)

    โมดูลมาตรฐานและ Third-party เก็บใน Lib/site-packages ของ Python Installation ดู Search Path ด้วย sys.path >>> import sys >>> print(sys.path) [, C:\\Python39, C:\\Python39\\Lib\\site-packages, ...] = Current Directory ตามด้วย Standard Library Paths สุดท้ายคือ site-packages (Thir

  9. พัฒนา Python Module เอง (Hello World)

    Module คือไฟล์ .py ที่มี Definitions (ฟังก์ชัน คลาส ตัวแปร) นำไป Import ใช้ได้ สร้างโมดูล fibonacci.py def fib(n): Print Fibonacci series up to n a, b = 0, 1 while b < n: print(b, end= ) a, b = b, a + b print() def fib2(n): Return Fibonacci series up to n as lis

  10. ติดตั้งโมดูล unidecode บน Linux (คู่มือ pip ทั่วไป)

    ขั้นตอนติดตั้ง unidecode (หรือโมดูลไหนก็ตาม) บน Linux ด้วย pip 1. ตรวจสอบ/อัปเกรด pip # Linux/macOS pip install -U pip setuptools # Windows python -m pip install -U pip setuptools 2. ติดตั้ง unidecode =0,<1 # ช่วงเวอร์ชัน หากใช้ Python ของ System Package Manager (apt/yum) ดูคำแนะนำ: Instal

  11. เรียกฟังก์ชันของโมดูลจากชื่อเป็น String (getattr)

    ใน Python ทุกอย่างคือ Object ฟังก์ชันก็เป็น Attribute ของ Module ใช้ getattr() ดึงมาเรียก รูปแบบพื้นฐาน >>> import foo >>> method_to_call = getattr(foo, bar) >>> result = method_to_call() กรณีฟังก์ชันอยู่ใน Global/Local Namespace >>> result = globals()[myfuncti

  12. Import โมดูล Python แบบ Remote (ไม่แนะนำ)

    สามารถ Import โมดูลจาก URL ได้ผ่าน Package knockout แต่ ไม่แนะนำใช้ Production (ช้า, Security Risk) ติดตั้ง knockout $ pip install knockout ใช้งาน >>> from knockout import urlimport >>> urlimport.register() >>> import sys >>> sys.path.insert(0, https://example.

  13. ติดตั้งโมดูล Python และ Dependency ด้วย pip (วิธีมาตรฐาน)

    pip คือ Package Manager มาตรฐานของ Python ติดตั้ง Dependency อัตโนมัติ ตรวจสอบ/อัปเกรด pip # Linux/macOS pip install -U pip setuptools # Windows python -m pip install -U pip setuptools ติดตั้ง pip หากยังไม่มี # ดาวน์โหลด curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py # ติดตั้ง python ge

  14. Import โมดูลอัตโนมัติตอนเริ่ม Python (PYTHONSTARTUP)

    ตั้ง Environment Variable PYTHONSTARTUP ชี้ไปที่ไฟล์ Python Script จะรันอัตโนมัติตอนเข้า Interactive Mode วิธีตั้งค่า สร้างไฟล์ เช่น ~/.python_startup.py ใส่ Import ที่ต้องการ ตั้ง Environment Variable: Windows Environment Variables New: PYTHONSTARTUP = C:\Users\You\.python_startup.py Linux/m

  15. เก็บโมดูล Python ในรูปแบบ Compiled (.pyc)

    Python คอมไพล์ Source เป็น Bytecode (.pyc) อัตโนมัติตอน Import วิธีสร้าง .pyc 1. Import ธรรมดา (รันโค้ดด้วย) >>> import mymodule # สร้าง mymodule.pyc ในโฟลเดอร์เดียวกัน 2. คอมไพล์อย่างเดียว ไม่รัน (py_compile) >>> import py_compile >>> py_compile.compile(mymodule.py)

  16. ติดตั้ง 2 โมดูล Python ชื่อเดียวกัน (ไม่ได้ปกติ)

    ไม่สามารถทำได้ผ่าน pip โดยตรง เพราะ PyPI บังคับชื่อ Unique ทุกแพ็กเกจ ปัญหา Python ค้นหาใน sys.path ตามลำดับ หยุดที่เจอชื่อตรงก่อน Dependency อื่นอาจพึ่งพาชื่อนี้ → Conflict วิธีแก้ (Workaround) 1. เปลี่ยนชื่อโมดูลใน Source Code Copy Code มาใส่ในโปรเจกต์เอง เปลี่ยนชื่อโฟลเดอร์/แพ็กเกจ แล้ว Impo

  17. Import โมดูล Python ใน Jython

    Jython รันบน JVM ใช้โมดูล Pure Python ได้ แต่ ไม่รองรับ C Extension ตั้งค่า Path ให้ Jython เห็นโมดูล Python ตั้ง Environment Variable JYTHONPATH (Jython 2.5+) ให้เท่ากับ PYTHONPATH หรือเพิ่มในโค้ด: sys.path.append(/path/to/python/site-packages) ตัวอย่าง # .bashrc หรือ .profile export PYTHONPATH

  18. โมดูล Python สำหรับจัดการวันที่: datetime และ dateutil

    Python มี datetime Built-in สำหรับ Parse, Format, Arithmetic ของ Date/Time Class หลัก datetime.time - เวลา (ชั่วโมง นาที วินาที ไมโครวินาที Timezone) datetime.date - วันที่ (ปี เดือน วัน) datetime.datetime - วันที่+เวลา รวม datetime.timedelta - ความต่างเวลา (ใช้บวก/ลบ) ตัวอย่าง Time >>>

Total 9001 -คอมพิวเตอร์  FirstPage PreviousPage NextPage LastPage CurrentPage:18/451  20-คอมพิวเตอร์/Page Goto:1 12 13 14 15 16 17 18 19 20 21 22 23 24