29 กรกฎาคม 2557

Published กรกฎาคม 29, 2557 by with 0 comment

เขียนโปรแกรมโหลดไฟล์เบื้องต้นจาก HTTP โดยใช้ Python

สวัสดีครับทุกท่าน บทความนี้ผมจะพาทุกท่านไปเขียนโปรแกรมโหลดไฟล์เบื้องต้นจาก HTTP โดยใช้ Python ถ้าพูดถึงโปรแกรมโหลดไฟล์ เราต้องนึกถึงโปรแกรมชื่อดังบน Windows อย่าง IDM ครับ บทความนี้คงผ่านผู้อ่านเขียนขนาดนั้นไม่ได้นะครับ
Read More

20 กรกฎาคม 2557

Published กรกฎาคม 20, 2557 by with 0 comment

webbrowser on Python 3

สวัสดีครับทุกท่าน บทความนี้จะนำเสนอเกี่ยวกับโมดูลที่มาพร้อมกับ Python 3 นั้นคือ webbrowser ใช้สำหรับเชื่อมต่อกับเว็บเบราว์เซอร์ต่าง ๆ ซึ่งใช้แสดงผลหน้าเว็บครับ
Read More

15 กรกฎาคม 2557

Published กรกฎาคม 15, 2557 by with 0 comment

ทูเพิล (Tuple) ใน Python

สวัสดีทุกท่านครับ บทความนี้จะพูดถึงเรื่อง ทูเพิล (Tuple) ทูเพิล  คือ โครงสร้างข้อมูลแบบเรียงลำดับ (List) ที่ไม่สามารถแก้ไขข้อมูลที่อยู่ใน tuple ได้ ตัวอย่างทูเพิล(Tuple)
Tuple1 = (5,4,3)
print (Tuple1)
Read More

14 กรกฎาคม 2557

Published กรกฎาคม 14, 2557 by with 0 comment

เขียนและอ่านข้อมูลจากเท็กซ์ไฟล์บน Python 3

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

เท็กซ์ไฟล์ (Text Files) เป็นอีกหนึ่งรูปแบบในการบันทึกข้อมูลครับ

มาเริ่มต้นที่การเปิดไฟล์กัน

รูปแบบการเปิดไฟล์
[python]ตัวแปร = open(ชื่อไฟล์, โหมดการเปิดไฟล์)[/python]

โหมดการเปิดไฟล์ที่ใช้กับเท็กซ์ไฟล์

r คือ อ่านเพียงอย่างเดียว
w คือ เขียนเพียงอย่างเดียว ถ้ายังไม่มีไฟล์ จะสร้างไฟล์ใหม่
w+ คือ เขียน สร้างไฟล์ใหม่ หรือแทนที่ข้อมูลเดิม
a คือ เปิดไฟล์แล้วเขียนข้อมูลต่อท้ายข้อมูลเดิม
r+ คือ  เปิดไฟล์เพื่ออ่านหรือเขียนข้อมูลทับไฟล์
ตัวอย่าง
[python]a = open('work1.txt', 'w')[/python]

เขียนข้อมูลลงเท็กซ์ไฟล์

สำหรับโหมดเขียนข้อมูลลงไฟล์นี้ ห้ามใช้ r ครับเพราะโหมดนี้ไม่สามารถเขียนข้อมูลลงไฟล์ได้ครับ
มีรูปแบบดังนี้ครับ
[python]ตัวแปรที่เปิดไฟล์.write(ข้อความหรือตัวแปร)[/python]
ตัวอย่าง
[python]a = open('work1.txt', 'w')
a.write('This is a testn')[/python]
ผลลัพธ์

เขียนข้อมูลรายการ (List) ลงเท็กซ์ไฟล์ทีละบรรทัด

มีรูปแบบดังนี้
[python]ตัวแปรที่เปิดไฟล์.writelines(List ข้อมูล)[/python]

อ่านข้อมูลจากเท็กซ์ไฟล์

มีรูปแบบดังนี้
[python]ตัวแปรที่เปิดไฟล์.read()[/python]
ตัวอย่าง
[python]a = open('work1.txt', 'r')
a.read()[/python]
ผลลัพธ์

หรือจะใช้ with
[python]with open('work1.txt', 'r') as f:
     read_data = f.read()
print(read_data)[/python]
ผลลัพธ์

อ่านข้อมูลจากเท็กซ์ไฟล์ทีละบรรทัด

ในการอ่านข้อมูลทีละบรรทัดนี้ Python ได้แบ่งบรรทัดโดยอ้างอิง n ครับ เวลาเขียนข้อมูลลงไฟล์ หากต้องการขึ้นบรรทัดใหม่ให้ใส่ n ตามหลังเข้าไปด้วยนะครับ
มีรูปแบบดังนี้
[python]ตัวแปรที่เปิดไฟล์.readline()[/python]
ตัวอย่าง
[python]a = open('work2.txt', 'r')
a.readline()[/python]

ปิดไฟล์หลังเรียกใช้งาน

เมื่อเรียกใช้งานไฟล์เสร็จ ควรที่จะปิดไฟล์เพื่อคืนทรัพยากรให้กับระบบครับ
มีรูปแบบการใช้งานดังนี้ครับ
[python]ตัวแปรที่เปิดไฟล์.close[/python]
ตัวอย่าง
[python]a.close[/python]
ผลลัพธ์

ฟังก์ชันเพิ่มเติม

  • ตัวแปรที่เปิดไฟล์.name - จะคืนค่าชื่อไฟล์ที่เปิดอยู่
  • ตัวแปรที่เปิดไฟล์.mode - จะคืนค่าโหมดการเปิดไฟล์ เช่น w , r เป็นต้น

แบบฝีกหัด

  1. จงเขียนโปรแกรมอ่านข้อความจากเท็กซ์ไฟล์
  2. จงเขียนโปรแกรมเก็บข้อความจากที่ผู้ใช้กรอกลงไปในเท็กซ์ไฟล์
  3. ให้ข้อมูลในไฟล์ b.txt มีเลข 5 อยู่ ให้ดึงค่าตัวเลขมาลบด้วย 4 แล้วแสดงผลลัพธ์ที่ได้ใน Python
  4. จงเขียนโปรแกรมให้สร้างไฟล์ a.txt แล้วเขียนเลข 2 ลงไปในไฟล์ แล้วให้ดึงค่าจากในไฟล์มาลบ 1 แล้วนำผลลัพธ์ที่ได้ไปเก็บแทนที่เลข 2 ใน a.txt
เฉวยข้อ 3 - 4 ท้ายบทความ

การนำไปประยุกต์ใช้

ตัวอย่าง โปรแกรมเขียนบันทึกและอ่านอย่างง่ายโดยใช้เท็กซ์ไฟล์
หลักการ รับค่าว่าจะทำงานไหน ถ้าเลือก 1 เขียนข้อมูลงเท็กซ์ไฟล์แล้วแสดงข้อความที่บันทึก จบการทำงาน ถ้าเลือก 2 อ่านข้อมูลจากเท็กซ์ไฟล์ จบการทำงาน
[python]#!/usr/bin/python
#-*-coding: utf-8 -*-
print ("The program notesbook")
print ("Build by Wannaphong")
print ("What you do?")
print ("1.To write n 2.Read")
x = int(input("input: ")) #จะใช้ if else ในการเช็ค
if x == 1:
    a = open('notes.txt','a+') #ใช้โหมดเปิดไฟล์ a+ เขียนต่อท้ายข้อมูลเดิม ถ้าไม่มีไฟล์ให้สร้างไฟล์ใหม่
    ab = input("input: ") #รับข้อมูล
    a.write(ab)#เขียนข้อมูลลงไฟล์
    print ("Ok, Text's:",ab) #แสดงข้อมูลที่บันทึก
    a.close #ปิดไฟล์
elif x == 2:
    a = open('notes.txt','r+')#ใช้โหมดเปิดไฟล์ r+ อ่านข้อมูลในไฟล์ ถ้าไม่มีไฟล์ให้สร้างไฟล์ใหม่
    print (a.read())#แสดงข้อมูลในไฟล์
    a.close #ปิดไฟล์[/python]
ผลลัพธ์
ขอบคุณครับ

เฉลยแบบฝึกหัด ข้อ 3, 4
ข้อ 3
f = open('b.txt','r') #เปิดไฟล์ b.txt
to = f.read() #อ่านไฟล์ b.txt
a = int(to) #เนื่องจากค่าที่อ่านได้จะเป็น str ต้องแปลงเป็น int ก่อน
s = a-4
print(s)
f.close #ปิดไฟล์
ข้อ 4
import sys
f = open('a.txt','w+') #เปิดไฟล์ a.txt ถ้ายังไม่มีไฟล์ ให้สร้างไฟล์ใหม่
f.write('2') #เก็บค่า str '2' ลงไป
f.close() #ปิดไฟล์
f = open('a.txt','r') #เปิดไฟล์ a.txt ให้สิทธิ์แค่อ่านไฟล์
to = f.read() #อ่านไฟล์ a.txt
a = int(to) #เนื่องจากค่าที่อ่านได้จะเป็น str ต้องแปลงเป็น int ก่อน
s = a-1
s = str(s) #แปลงให้เป็น str ก่อนเก็บเข้าไฟล์
f.close() #ปิดไฟล์
f = open('a.txt','w+') #เปิดไฟล์ a.txt ถ้ายังไม่มีไฟล์ ให้สร้างไฟล์ใหม่ หรือแทนที่ข้อมูลเดิม
f.write(s)
f.close() #ปิดไฟล์

Read More

13 กรกฎาคม 2557

Published กรกฎาคม 13, 2557 by with 0 comment

Python OOP อ๊อบเจ็กและคลาส

  สวัสดีครับทุกท่าน หลาย ๆ ท่านคงเคยได้ยินคำว่า OOP การเขียนโปรแกรมเชิงวัตถุกันมาบ้างแล้วครับ OOP ย่อมาจาก Object-Oriented Programming เป็นหลักการที่เหมาะสมกับการพัฒนาโปรแกรมทั้งขนาดเล็ก ขนาดกลาง และขนาดใหญ่
Read More

12 กรกฎาคม 2557

Published กรกฎาคม 12, 2557 by with 0 comment

ชนิดของข้อมูลพื้นฐาน

ข้อมูล คือ ข้อเท็จจริง นี้คงเป็นกฎที่หลาย ๆ ท่านคงเคยศึกษามาครับ บทความนี้จะกล่าวถึงเรื่อง ชนิดของข้อมูลพื้นฐาน ซึ่งเป็นสิ่งสำคัญที่ทุกท่านต้องรู้ก่อนเขียนโปรแกรมในภาษา Python ครับ
Read More

11 กรกฎาคม 2557

Published กรกฎาคม 11, 2557 by with 0 comment

คำสั่งการวงรอบ Loop หรือคำสั่งทำซ้ำ

สวัสดีครับทุกท่าน การเขียนโปรแกรมในบางกรณีโปรแกรมที่เขียนต้องทำงานอย่างหนึ่ง ๆ ซ้ำกันหลาย ๆ ครั้ง เราต้องใช้การวงรอบ Loop ในการโปรแกรมครับ บทความนี้จะนำเสนอการใช้คำสั่งการวงรอบ Loop ผมขอเรียกว่า คำสั่งทำซ้ำ ครับ
Read More

10 กรกฎาคม 2557

Published กรกฎาคม 10, 2557 by with 0 comment

เชื่อมต่อกับฐานข้อมูล MySQL ใน Python 3

สวัสดีทุกผู้อ่านทุกท่านครับ ผู้อ่านคงเคยใช้ฐานข้อมูล MySQL กันครับ ใน PHP การเชื่อมต่อกับฐานข้อมูล MySQL นั้นง่ายมากเพราะ PHP รวมมอดูลจัดการฐานข้อมูล MySQL มาให้แล้ว แต่ใน Python 3 ต้องติดตั้งมอดูลครับ
Read More

6 กรกฎาคม 2557

Published กรกฎาคม 06, 2557 by with 0 comment

โปรแกรมส่งอีเมล์โดยใช้ smtplib ผ่านโพรโทคอล SMTP

สวัสดีครับทุกท่าน วันนี้ผมขอนำเสนอตัวอย่างโปรแกรมส่งอีเมล์โดยใช้ smtplib วิ่งผ่านโพรโทคอล SMTP ครับ การที่จะทำแบบนั้นได้โดยใช้ Python 3 ต้องใช้ smtplib ครับ
Read More

5 กรกฎาคม 2557

Published กรกฎาคม 05, 2557 by with 0 comment

การแสดงผลข้อมูลใน Python 3

สวัสดีครับ บทความนี้จะพูดถึงเรื่อง "การแสดงผลข้อมูลใน Python 3" การแสดงผลข้อมูลถือเป็นสิ่งสำคัญเพื่อให้รู้ผลลัพธ์จากการประมวลผลของคอมพิวเตอร์ ถ้าไม่มีการแสดงผลการทำงานของโปรแกรม การที่เขียนโปรแกรมนั้นจะไม่มีประโยชน์อะไรเลย เพราะไม่สามารถนำข้อมูลไปใช้งานได้
Read More

2 กรกฎาคม 2557

Published กรกฎาคม 02, 2557 by with 0 comment

คำสั่งเงื่อนไข if else ใน Python 3

สวัสดีครับทุกท่าน บทความนี้จะพูดถึงเรื่อง คำสั่งเงื่อนไข if else ใน Python 3 ครับ คำสั่งเงื่อนไข if นี้ใช้ในการเปรียบเทียบเงื่อนไขว่าตรงตามที่ต้องการหรือไม่ elif ถ้าไม่ให้ทำการเปรียบเทียบต่อไป
Read More
Published กรกฎาคม 02, 2557 by with 0 comment

การดำเนินการแบบตรรกะ(Boolean Operations)ใน Python 3

สวัสดีครับทุกท่าน บทความนี้จะพูดถึงเรื่อง การดำเนินการแบบตรรกะ(Boolean Operations)ใน Python 3 ครับ โดยใช้ตรรกะศาสตร์เข้ามา โดยการใช้หลักเหตุและผล ผลลัพธ์ที่ได้จะได้ จริง (True) และ เท็จ (False) ครับ
Read More

1 กรกฎาคม 2557

Published กรกฎาคม 01, 2557 by with 0 comment

การติดตั้งมอดูล Modules ใน Python 3

สวัสดีครับทุกท่าน มอดูล (Modules) เป็นส่วนที่ช่วยเพิ่มความสามารถของโปรแกรมและความสะดวกสบายของโปรแกรมเมอร์ ใน Python 3 ก็มีมอดูล (Modules) ให้ติดตั้งครับ
Read More