การเขียนโปรแกรม

คู่มือสำหรับผู้เริ่มต้นใช้งาน Ultimate Python

30 ตุลาคม 2564

สารบัญ

  • การตั้งค่าสภาพแวดล้อม
  • ตัวแปรสภาพแวดล้อม Python
  • ไวยากรณ์พื้นฐาน
  • ประเภทตัวแปร
    • การกำหนดค่าให้กับตัวแปร
    • ประเภทข้อมูลหลาม
    • เครื่องสาย
    • ทูเปิลส์
    • รายการ
    • ตัวเลข
  • ตัวดำเนินการพื้นฐาน
    • ผู้ปฏิบัติงานที่ได้รับมอบหมาย
    • ตัวดำเนินการระดับบิต
    • ตัวดำเนินการตรรกะ
    • ตัวดำเนินการเลขคณิต
    • ตัวดำเนินการเปรียบเทียบ
    • ตัวดำเนินการข้อมูลประจำตัว
    • ผู้ประกอบการสมาชิก
  • การตัดสินใจ
    • ถ้าคำสั่ง
    • if-else
    • ซ้อนกัน if
    • If-elif-else-บันได
    • ชวเลข if คำสั่ง
    • คำสั่ง if-else แบบย่อ
  • ลูป
    • ในขณะที่ลูป
    • สำหรับวง
    • ลูปซ้อน
    • คำสั่งควบคุมวง
    • ดำเนินการต่อคำสั่ง
    • คำสั่งหยุด
    • ใบแจ้งยอด
  • ตัวเลข
    • การแปลงประเภทตัวเลข
    • ฟังก์ชันตัวเลขสุ่ม
    • ฟังก์ชันตรีโกณมิติ
    • ฟังก์ชันทางคณิตศาสตร์
  • เครื่องสาย
    • การสร้างสตริง
    • ตัวดำเนินการพิเศษสตริง
    • ตัวดำเนินการจัดรูปแบบสตริง
    • ตัวละครหนี
    • สร้างขึ้นในวิธีการสตริง
  • ทูเปิลส์
    • การเข้าถึงค่าในทูเปิลส์
    • กำลังอัปเดต tuples
    • ตัวดำเนินการทูเพิลพื้นฐาน
    • สร้างขึ้นในฟังก์ชันทูเพิล
    • การจัดทำดัชนีและการแบ่งส่วน
    • การลบทูเพิล
  • รายการ
    • การเข้าถึงค่าในรายการ
    • กำลังอัปเดตรายการ
    • ตัวดำเนินการรายการพื้นฐาน
    • ฟังก์ชันและเมธอดของรายการในตัว
    • การจัดทำดัชนีและการแบ่งส่วน
    • ลบรายการองค์ประกอบ
  • พจนานุกรม
    • การสร้างพจนานุกรม
    • การเพิ่มองค์ประกอบในพจนานุกรม
    • การลบองค์ประกอบออกจากพจนานุกรม
    • วิธีพจนานุกรม Python
  • วันและเวลา
    • เวลาทูเปิล
    • โมดูลเวลา
    • โมดูลปฏิทิน
  • ฟังก์ชั่น
    • วิธีการกำหนดฟังก์ชัน
    • เรียกฟังก์ชัน
    • ผ่านโดยการอ้างอิง
    • ผ่านค่า
    • อาร์กิวเมนต์ของฟังก์ชัน
    • อาร์กิวเมนต์ความยาวผันแปร
    • อาร์กิวเมนต์ที่จำเป็น
    • อาร์กิวเมนต์เริ่มต้น
    • อาร์กิวเมนต์ของคีย์เวิร์ด
    • ฟังก์ชั่นนิรนาม
  • โมดูล
    • ใบแจ้งยอดการนำเข้า
    • คำสั่งจากการนำเข้า
    • จากการนำเข้า * Statement
    • ค้นหาโมดูล
    • locals() และ globals() ฟังก์ชั่น
    • เนมสเปซและการกำหนดขอบเขต
    • dir( ) ฟังก์ชัน
    • ฟังก์ชันรีโหลด()
  • ไฟล์ I / O
    • การเปิดไฟล์
    • คุณสมบัติของวัตถุไฟล์
    • การปิดไฟล์
    • พร้อมถ้อยแถลง
    • วิธีการเขียน
    • วิธีการอ่าน
    • เปลี่ยนชื่อ() method
    • วิธีการลบ ()
    • ตำแหน่งไฟล์
  • ข้อยกเว้น
    • ข้อยกเว้นคืออะไร?
    • การจัดการข้อยกเว้น
    • ทำให้เกิดข้อยกเว้น
    • รายการข้อยกเว้นมาตรฐาน
    • ผู้ใช้กำหนดข้อยกเว้น
    • การยืนยันใน Python
  • ชั้นเรียนและวัตถุ
    • การสร้างคลาส
    • คลาส Objects
    • การเข้าถึงคุณสมบัติ
    • แอตทริบิวต์คลาสที่สร้างขึ้น
    • เก็บขยะ
    • การสืบทอดคลาส
    • วิธีการเอาชนะ
    • นิพจน์ทั่วไป
    • ฟังก์ชั่นจับคู่
    • ฟังก์ชั่นการค้นหา
    • ตัวแก้ไขนิพจน์ทั่วไป
    • รูปแบบนิพจน์ทั่วไป
    • คลาสตัวละคร
    • กรณีซ้ำ
    • สมอ
  • การเขียนโปรแกรม CGI
    • การท่องเว็บ
    • ส่วนหัว HTTP
    • ตัวแปรสภาพแวดล้อม CGI
    • GET วิธี
    • วิธีโพสต์
    • การใช้คุกกี้ใน CGI
    • มันทำงานอย่างไร?
  • การเข้าถึงฐานข้อมูล MySQL
    • การสร้างตารางฐานข้อมูล
    • INSERT การทำงาน
    • อ่านการดำเนินการ
    • อัพเดทการทำงาน
    • ลบการดำเนินการ
    • การทำธุรกรรม
    • COMMIT Operation
    • การดำเนินการย้อนกลับ
    • ยกเลิกการเชื่อมต่อฐานข้อมูล
    • การจัดการข้อผิดพลาด
  • เครือข่าย
    • ซ็อกเก็ตคืออะไร?
    • โมดูลซ็อกเก็ต
    • โมดูลอินเทอร์เน็ต Python
  • กำลังส่งอีเมล
    • การส่งอีเมล HTML โดยใช้ Python
    • การส่งไฟล์แนบเป็นอีเมล
  • การเขียนโปรแกรมมัลติเธรด
    • ตั้งกระทู้ใหม่
    • โมดูลเกลียว
    • การซิงโครไนซ์เธรด
    • คิวลำดับความสำคัญแบบมัลติเธรด
  • การประมวลผล XML
    • XML คืออะไร?
    • สถาปัตยกรรม XML Parser และ API
    • การแยกวิเคราะห์ XML ด้วย SAX APIs
      • เมธอด make_parser
      • วิธีการแยกวิเคราะห์
      • วิธี parseString
  • การเขียนโปรแกรม GUI
    • วิดเจ็ต Tkinter
  • การจัดการเรขาคณิต
  • บทความแนะนำ

การตั้งค่าสภาพแวดล้อม

Python พร้อมใช้งานบนแพลตฟอร์มต่างๆ ซึ่งรวมถึง Linux, Windows และ Mac OS X ให้เราเข้าใจวิธีตั้งค่าสภาพแวดล้อม Python

การตั้งค่าสภาพแวดล้อมท้องถิ่น

เปิดหน้าต่างเทอร์มินัลแล้วพิมพ์ python เพื่อดูว่าติดตั้งไว้แล้วหรือไม่และติดตั้งเวอร์ชันใด

  • แมคอินทอช (Intel, PPC, 68K)
  • Unix (Solaris, Linux, AIX, FreeBSD, HP/UX, SunOS, IRIX เป็นต้น)
  • ชนะ 9x/NT/2000
  • โทรศัพท์มือถือโนเกีย
  • OS/2
  • เพื่อน
  • DOS (หลายเวอร์ชัน)
  • PalmOS
  • Windows CE
  • โอ๊ก/RISC OS
  • BeOS
  • VMS/OpenVMS
  • QNX
  • VxWorks
  • ไซออน

วิธีรับ Python

คุณจะพบการอัปเดตและซอร์สโค้ด ไบนารี เอกสาร ข่าว ฯลฯ บนเว็บไซต์ทางการของ Python https://www.python.org/

คุณสามารถดาวน์โหลดเอกสาร Python ได้จาก https://www.python.org/doc/ . เอกสารประกอบมีอยู่ในรูปแบบ PDF, HTML และ PostScript

วิธีการติดตั้ง Python

การกระจาย Python สามารถใช้ได้กับแพลตฟอร์มต่างๆ คุณต้องดาวน์โหลดเฉพาะรหัสไบนารีที่ใช้กับแพลตฟอร์มของคุณและติดตั้ง Python

หากไม่มีรหัสไบนารีสำหรับแพลตฟอร์ม คุณต้องมีคอมไพเลอร์ C เพื่อคอมไพล์โค้ดด้วยตนเอง การคอมไพล์โค้ดจะมีความยืดหยุ่นมากขึ้นในแง่ของการเลือกคุณลักษณะที่คุณต้องการในการติดตั้งของคุณ

การติดตั้ง Windows

นี่คือขั้นตอนที่คุณต้องปฏิบัติตามเพื่อติดตั้ง Python บน Windows

  • เปิดเว็บเบราว์เซอร์และไปที่ https://www.python.org/downloads/ .
  • ตอนนี้ตามลิงค์สำหรับตัวติดตั้ง Windows python-XYZ.msi ไฟล์ และคุณจะพบเวอร์ชัน XYZ ที่คุณต้องการติดตั้ง
  • ในการใช้ตัวติดตั้งนี้ Windows ต้องรองรับ Microsoft Installer 2.0 บันทึกโปรแกรมติดตั้งลงในระบบของคุณแล้วเรียกใช้เพื่อดูว่าอุปกรณ์ของคุณรองรับ MSI หรือไม่
  • เรียกใช้ไฟล์ที่ดาวน์โหลด การดำเนินการนี้จะแสดงวิซาร์ดการติดตั้ง Python ซึ่งใช้งานง่าย ยอมรับการตั้งค่าเริ่มต้น รอจนกว่าการติดตั้งจะเสร็จสิ้น เท่านี้คุณก็เสร็จสิ้น

การติดตั้ง Unix/Linux

ต่อไปนี้คือขั้นตอนง่ายๆ ในการติดตั้ง Python บนเครื่อง Unix/Linux

  • เปิดเว็บเบราว์เซอร์และไปที่ https://www.python.org/downloads/ .
  • ไปที่ดาวน์โหลดซอร์สโค้ดซิปที่มีให้สำหรับ Unix/Linux
  • ดาวน์โหลดและแตกไฟล์
  • แก้ไขโมดูล/ไฟล์การติดตั้ง หากคุณต้องการปรับแต่งตัวเลือกบางอย่าง
  • เรียกใช้/กำหนดค่าสคริปต์
  • ติดตั้ง

สิ่งนี้จะติดตั้ง Python ที่ตำแหน่งมาตรฐาน /usr/local/bin และไลบรารีที่ /usr/local/lib/pythonXX โดยที่ XX คือเวอร์ชันของ Python

การติดตั้ง MAC

MAC ล่าสุดมาพร้อมกับ Python ที่ติดตั้งไว้ แต่คุณต้องอัปเดต ไปที่ http://www.python.org/download/mac/ เพื่อรับเวอร์ชันปัจจุบันพร้อมกับเครื่องมือพิเศษบางอย่างเพื่อสนับสนุนการพัฒนา

คุณสามารถเข้าถึงเอกสารฉบับสมบูรณ์ได้ที่เว็บไซต์นี้ − http://www.cwi.nl/~jack/macpython.html .

การตั้งค่าเส้นทางสำหรับ Python

โปรแกรมและไฟล์อื่นๆ สามารถอยู่ในหลายไดเร็กทอรี ดังนั้น OS จึงจัดเตรียมพาธการค้นหาที่แสดงรายการไดเร็กทอรีที่ OS ค้นหาเพื่อดำเนินการ

มันถูกเก็บไว้ในตัวแปรสภาพแวดล้อมซึ่งดูแลโดยระบบปฏิบัติการ ตัวแปรประกอบด้วยข้อมูลของ command shell และโปรแกรมอื่นๆ

ตัวแปรพาธถูกตั้งชื่อเป็น PATH ใน Unix (Unix คำนึงถึงขนาดตัวพิมพ์) หรือ Path ใน Windows (Windows ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่)

ใน Mac โปรแกรมติดตั้งจะจัดการรายละเอียดพาธ ในการเรียกใช้ล่าม Python คุณต้องเพิ่มไดเร็กทอรี Python ให้กับพาธของคุณ

การตั้งค่าพาธสำหรับ Unix/Linux

การเพิ่มไดเร็กทอรีไปยังเส้นทางสำหรับ Unix/Linux −

    ในเชลล์ csh-พิมพ์ setenv PATH $PATH:/usr/bin/python กด Enterในเปลือกทุบตี− พิมพ์ export PATH=$PATH:/usr/bin/python แล้วกด Enterในเปลือก Ksh-พิมพ์ PATH=$PATH:/usr/bin/python กด Enterบันทึก− /usr/bin/python คือพาธของไดเร็กทอรี Python

การตั้งค่าพาธสำหรับ Windows

การเพิ่มไดเร็กทอรีไปยังเส้นทางสำหรับ Windows −

ที่พรอมต์คำสั่ง - พิมพ์ path %path%;C:Python แล้วกด Enter

บันทึก − C:Python คือพาธของไดเร็กทอรี Python

ตัวแปรสภาพแวดล้อม Python

ใช่ไม่ใช่ตัวแปรคำอธิบาย
หนึ่ง ไพธอนพาธ มีบทบาทคล้ายกับ PATH ตัวแปรนี้บอกล่ามว่าจะหาตำแหน่งไฟล์โมดูลที่นำเข้าไปยังโปรแกรมได้ที่ไหน ควรมีไดเร็กทอรีไลบรารี Python และไดเร็กทอรีที่มีซอร์สโค้ด Python บางครั้งโปรแกรมติดตั้ง Python จะตั้งค่า PYTHONPATH ไว้ล่วงหน้า
สอง PYTHONCASEOK ใช้ใน Windows เพื่อบอกให้ Python ค้นหาการจับคู่ที่ไม่คำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ในคำสั่งนำเข้า ตั้งค่าตัวแปรเป็นค่าใดๆ เพื่อเปิดใช้งาน
3 PYTHONSTARTUP มันมีพาธของไฟล์การเริ่มต้นด้วยซอร์สโค้ด Python จะดำเนินการทุกครั้งที่คุณเริ่มล่าม มันถูกตั้งชื่อเป็น .pythonrc.py ใน Unix และมีคำสั่งที่โหลดยูทิลิตี้หรือแก้ไข PYTHONPATH
4 หลามโฮม เป็นเส้นทางการค้นหาโมดูล มันถูกฝังอยู่ในไดเร็กทอรี PYTHONPATH หรือ PYTHONSTARTUP เพื่อให้การสลับโมดูลไลบรารีเป็นเรื่องง่าย

รัน Python

มีหลายวิธีในการเริ่ม Python คุณสามารถเริ่ม Python จาก Unix, DOS หรือระบบอื่นใดที่มีล่ามบรรทัดคำสั่งหรือหน้าต่างเชลล์ ป้อน Python ในบรรทัดคำสั่ง

เริ่มเขียนโค้ดทันทีในตัวแปลแบบโต้ตอบ

img 617dd259b1ee8

เราได้ตั้งค่าสภาพแวดล้อมการเขียนโปรแกรมสำหรับ python ออนไลน์แล้ว เพื่อให้คุณสามารถดำเนินการตัวอย่างที่มีทั้งหมดได้ ปรับเปลี่ยนโมเดลและเรียกใช้แบบออนไลน์ได้ตามสบาย

ไวยากรณ์พื้นฐาน

เช่นเดียวกับภาษาธรรมชาติอื่นๆ ภาษาโปรแกรมคอมพิวเตอร์ประกอบด้วยชุดคำที่กำหนดไว้ล่วงหน้าซึ่งเรียกว่าคำหลัก กฎการใช้งานที่กำหนดไว้ล่วงหน้าสำหรับคำหลักแต่ละคำเรียกว่าไวยากรณ์ ล่าม Python มี 33 คำหลักที่กำหนดไว้ในนั้น เนื่องจากมีความหมายที่กำหนดไว้ล่วงหน้า จึงไม่สามารถนำมาใช้เพื่อวัตถุประสงค์อื่นได้ รายการคีย์เวิร์ด Python ได้มาจากการใช้คำสั่ง help ต่อไปนี้ใน Python shell

img 617dd259ecaca
จริงเอลฟ์ในลอง
เท็จยกdefถ้า
ไม่มีของกลับนำเข้า
และในขณะที่เป็นอื่น
เช่นยกเว้นแลมบ์ดากับ
หยุดพักสำหรับไม่ระดับ
จากหรือดำเนินต่อผ่าน
ทั่วโลกยืนยันผลผลิตไม่ใช่ท้องถิ่น
ในที่สุด

ยกเว้น เท็จ ไม่มี และ จริง คีย์เวิร์ดอื่นๆ เป็นตัวพิมพ์เล็กทั้งหมด

ตัวระบุ Python

นอกเหนือจากคำหลัก โปรแกรม Python ยังมีฟังก์ชัน ตัวแปร โมดูล คลาส แพ็คเกจ ฯลฯ ตัวระบุคือชื่อที่กำหนดให้กับองค์ประกอบการเขียนโปรแกรม ตัวระบุควรเริ่มต้นด้วยตัวอักษร (ตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก) หรือขีดล่าง (_) หลังจากนั้น มากกว่าหนึ่งตัวอักษร (A-Z หรือ a-z) ตัวเลข (0-9) ไม่อนุญาตให้ใช้อักขระอื่น

  • ชื่อของชั้นเรียนเริ่มต้นด้วยตัวอักษรตัวพิมพ์ใหญ่ อื่นๆ เริ่มต้นด้วยตัวอักษรพิมพ์เล็ก
  • อักขระขีดล่างหนึ่งหรือสองตัวมีความรู้สึกเฉพาะตัวเมื่อตั้งชื่อแอตทริบิวต์อินสแตนซ์ของคลาส
  • มีการใช้เครื่องหมายขีดล่างและขีดล่างนำหน้าในภาษาเพื่อวัตถุประสงค์พิเศษ ตัวอย่างเช่น (เช่น __add__, __init__)

คำสั่งหลาม

โดยค่าเริ่มต้น ล่าม Python จะปฏิบัติต่อข้อความที่สิ้นสุดด้วยการขึ้นบรรทัดใหม่ (อักขระขึ้นบรรทัดใหม่) เป็นคำสั่ง ซึ่งหมายความว่าแต่ละบรรทัดในสคริปต์ Python เป็นคำสั่ง (เช่นเดียวกับใน C++/C# อัฒภาค หมายถึงจุดสิ้นสุดของคำสั่ง)

img 617dd25a3aaa8

แม้ว่า คุณสามารถแสดงข้อความที่กระจายมากกว่าหนึ่งบรรทัดให้เป็นคำสั่งเดียวได้โดยใช้แบ็กสแลช () เป็นอักขระต่อเนื่อง

img 617dd25a8117e

ใช้เครื่องหมายอัฒภาค เพื่อเขียนหลายประโยคในบรรทัดเดียว

img 617dd25ada987

เยื้องใน Python

บางครั้งจำเป็นต้องสร้างบล็อกมากกว่าหนึ่งคำสั่ง

ภาษาโปรแกรมต่างๆ ใช้เทคนิคต่างๆ เพื่อกำหนดขอบเขตและขอบเขตของบล็อกคำสั่งในโครงสร้าง เช่น คลาส ฟังก์ชัน เงื่อนไข และลูป ใน C, C++, C# หรือ Java คำที่อยู่ในวงเล็บ { และ } จะถือเป็นบล็อก

Python ใช้การเยื้องแบบสม่ำเสมอเพื่อระบุกลุ่มคำสั่ง เมื่อบล็อกเริ่มต้น ให้พิมพ์สัญลักษณ์โคลอน ( : ) และกด Enter

โปรแกรมแก้ไข Python ใดๆ (เช่น IDLE) ไปที่บรรทัดถัดไปโดยเว้นช่องว่าง ข้อความต่อไปนี้ในบล็อกเป็นไปตามระดับการเยื้องเดียวกัน หากต้องการแจ้งจุดสิ้นสุดของบล็อก ช่องว่างจะลดลงโดยการกดปุ่ม Backspace

หากตัวแก้ไขของคุณไม่ได้สร้างขึ้นสำหรับ Python คุณต้องแน่ใจว่าคำสั่งของบล็อกควรมีระดับการเยื้องเหมือนกันโดยกดแป้นแท็บหรือแป้นเว้นวรรค ตัวแปล Python จะแสดงข้อผิดพลาดหากระดับการเยื้องไม่เหมือนกัน

img 617dd25b343ac

บล็อกฟังก์ชัน Python shell, SayHello() เริ่มต้นหลังจาก: และกด Enter จากนั้นจะแสดงเพื่อทำเครื่องหมายบล็อก ตอนนี้ใช้แท็บสำหรับการเยื้องแล้วเขียนคำสั่ง ตอนนี้เพื่อสิ้นสุดการบล็อก ให้กด Enter สองครั้ง

ความคิดเห็นใน Python

ในสคริปต์ Python สัญลักษณ์ # หมายถึงจุดเริ่มต้นของบรรทัดความคิดเห็น มีผลจนถึงท้ายบรรทัดในเอดิเตอร์ ถ้า # เป็นอักขระตัวแรกในบรรทัด แสดงว่าทั้งบรรทัดเป็นความคิดเห็น นอกจากนี้ยังสามารถใช้ตรงกลางบรรทัดได้อีกด้วย

img 617dd25bb416b

ใน Python ไม่มีกฎให้เขียนคำหลายบรรทัดหรือบล็อกความคิดเห็น แต่ละบรรทัดต้องมีสัญลักษณ์ # ที่จุดเริ่มต้นเพื่อทำเครื่องหมายเป็นความคิดเห็น Python IDE จำนวนมากมีทางลัดเพื่อเก็บบล็อกคำสั่งเป็นความคิดเห็น

สตริงหลายบรรทัดสามบรรทัดยังถือเป็นความคิดเห็นหากไม่ใช่ docstring ของฟังก์ชันหรือคลาส

รับอินพุต

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

ฟังก์ชัน input() จะอ่านอินพุตเป็นสตริง แม้ว่าจะประกอบด้วยตัวเลขก็ตาม ฟังก์ชัน type() ที่ใช้ก่อนหน้านี้จะยืนยันพฤติกรรมนี้

img 617dd25c362b3

แสดงผลลัพธ์

ฟังก์ชันในตัวอื่น print() ทำหน้าที่เป็นคำสั่งเอาต์พุตใน Python มันสะท้อนค่าของนิพจน์ Python บนเชลล์ Python ค่าหลายค่าจะแสดงโดยฟังก์ชัน single print() คั่นด้วยเครื่องหมายจุลภาค ตัวอย่างต่อไปนี้แสดงให้เห็นถึงค่าของตัวแปรชื่อและอายุโดยใช้ฟังก์ชัน print() ที่พร้อมใช้งาน

img 617dd25c73a2c