วันจันทร์ที่ 12 ตุลาคม พ.ศ. 2552

PyCon APAC

อ่านได้ที่ Narisa

วันอาทิตย์ที่ 4 ตุลาคม พ.ศ. 2552

python to exe

py2exe เป็นโมดูลที่ใช้ทำไพธอนให้เป็นไฟล์ exe เพื่อใช้ทำงานใน window

วันเสาร์ที่ 3 ตุลาคม พ.ศ. 2552

Gato

Gato : Graph Animation Toolbox

วันพฤหัสบดีที่ 24 กันยายน พ.ศ. 2552

Skulpt

Skulpt เป็นไพธอนบนเวบไซต์อีกตัวที่หนึ่งที่น่าสนใจ สามารถใช้งานได้เลยไม่ต้องลงโปรแกรม

วันอังคารที่ 15 กันยายน พ.ศ. 2552

pymat

pymat is MATLAB engine for Python

วันพฤหัสบดีที่ 3 กันยายน พ.ศ. 2552

Try Python

อยากลองไพธอน แต่ไม่อยากลงโปรแกรม ใช้ TryPython

วันเสาร์ที่ 22 สิงหาคม พ.ศ. 2552

pythonic

เขียน python มาตั้งนานเพิ่งจะเคยได้ยินคำว่า pythonic ไปหาเจอ sugree เขียนไว้ที่ codenone อ่านแล้วเข้าใจได้ง่ายดีเลยนำมาแปะไว้

วันศุกร์ที่ 21 สิงหาคม พ.ศ. 2552

วันศุกร์ที่ 14 สิงหาคม พ.ศ. 2552

NLTK

Natural Language Toolkit (NLTK) เป็นโมดูลของไพธอนเกี่ยวกับงานทางด้าน NLP มีฟังก์ชั่นการทำงานที่ครบครัน เช่น Corpus readers, Tokenizers, Parsers, Classifiers, Clusterers, Metrics และอื่นๆ มี Corpus ให้ใช้ทดสอบถึง 60 Corpus

วันศุกร์ที่ 7 สิงหาคม พ.ศ. 2552

Python SDK version 1.2.4 for Google App Engine

Python SDK version 1.2.4 ออกมาแล้ว
Google App Engine ได้ปล่อยตัว SDK ในภาษาไพธอนเวอร์ชั่นใหม่ออกมาซึ่งสามารถดู
รายละเอียดเพิ่มเติม ที่นี่
ดาวโหลดได้ ที่นี่

วันพฤหัสบดีที่ 23 กรกฎาคม พ.ศ. 2552

PLY (Python Lex and Yacc)

PLY เป็นเครื่องมือในการทำ Lex กับ Yacc โดยใช้ภาษาไพธอน

วันอาทิตย์ที่ 12 กรกฎาคม พ.ศ. 2552

Edit in place

inputfile.txt

goodbye
hello
see you later!


edit.py

import fileinput
for lines in fileinput.FileInput("inputfile.txt", inplace=1): ## edit file in place
lines = lines.replace("hello","hi")
print lines.replace('\n','') ## although this prints the line, the file will be modified.



inputfile.txt

goodbye
hi
see you later!


จาก ubuntuforums

วันพฤหัสบดีที่ 2 กรกฎาคม พ.ศ. 2552

Sphinx

Sphinx เป็นเครื่องมือที่ใช้ในการสร้างคู่มือให้กับ python

วันอังคารที่ 23 มิถุนายน พ.ศ. 2552

Random in Python


>>> import random
>>> random.random() # เป็นการสุ่ม ตัวเลขที่มีทศนิยม (float) ระหว่าง 0.0 <= x < 1.0
0.37444887175646646
>>> random.uniform(1, 10) # เป็นการสุ่ม ตัวเลขที่มีทศนิยม (float)ระหว่าง 1.0 <= x < 10.0
1.1800146073117523
>>> random.randint(1, 10) # เป็นการสุ่ม ตัวเลขจำนวนเต็ม (Integer) ระหว่าง 1 ถึง 10
7
>>> random.randrange(0, 101, 2) # เป็นการสุ่ม ตัวเลขจำนวนเต็ม (Integer) ระหว่าง 1 ถึง 100 แต่จะสุ่มตามเลขที่เพิ่มค่าทีละ 2
26
>>> random.choice('abcdefghij') # สุ่มเลือกตัวอักษร
'c'

>>> items = [1, 2, 3, 4, 5, 6, 7]
>>> random.shuffle(items) # สลับค่าใน list แบบสุ่ม
>>> items
[7, 3, 2, 5, 6, 4, 1]

>>> random.sample([1, 2, 3, 4, 5], 3) # เลือกค่าใน list มา 3 ค่า
[4, 1, 5]



จาก Python Document

วันพฤหัสบดีที่ 18 มิถุนายน พ.ศ. 2552

Regular Expression in Python

วันอังคารที่ 16 มิถุนายน พ.ศ. 2552

วันอาทิตย์ที่ 14 มิถุนายน พ.ศ. 2552

Regular Expression Function

Regular Expression มีฟังก์ชั่นการทำงานดังต่อไปนี้


>>>import re
>>>pat = 'Hello'
>>>raw = 'Hello world. Hello you.'


compile(pat) เป็นการคอมไพล์ข้อความรูปแบบ โดยจะคืนค่ามาเป็น Pattern object


>>>re.compile(pat)
>>><_sre.SRE_Pattern object at 0x01357500>


re.findall(pat,raw) เป็นการค้นหาในส่วนของข้อความและจะคืนข้อความทั้งหมดที่ตรงกับรูปแบบกำหนดในรูปแบบ list


>>>re.findall(pat,raw)
>>>['Hello', 'Hello']


re.finditer(pat,raw) เป็นการค้นหาในส่วนของข้อความและจะคืนข้อความทั้งหมดที่ตรงกับรูปแบบกำหนดเหมือนกับ findall แต่จะคืนในรูปแบบ iterator


>>>re.finditer(pat,raw)
>>>


re.match(pat,raw) เป็นการค้นหาในส่วนของข้อความและจะคืนข้อความในรูปแบบ Match object


>>>re.match(pat,raw)
>>><_sre.SRE_Match object at 0x01FA7BF0>


re.search(pat,raw) เป็นการค้นหาในส่วนของข้อความและจะคืนข้อความในรูปแบบ Match object แต่ต่างจาก match ตรงที่จะรู้ตำแหน่งด้วย


>>>re.search(pat,raw)
>>><_sre.SRE_Match object at 0x01FA7BF0>


re.split(pat,raw) เป็นการตัดแบ่งข้อความด้วยรูปแบบที่ต้องการ


>>>re.split(pat,raw)
>>>['', ' world. ', ' you.']


re.sub(pat, 'new text', raw) เป็นการแทนข้อความที่เรากำหนดตรงตำแหน่งที่เราใส่รูปแบบที่ต้องการ


>>>re.sub(pat,'Sawasdee', raw)
>>>'Sawasdee world. Sawasdee you.'


re.subn(pat,'Sawasdee',raw) เป็นการแทนข้อความที่เรากำหนดตรงตำแหน่งที่เราใส่รูปแบบที่ต้องการ แต่จะคืนเป็น tuple เป็นข้อความใหม่กับ จำนวนข้อความที่ถูกเปลี่ยน


>>>re.subn(pat,'Sawasdee',raw)
>>>('Sawasdee world. Sawasdee you.', 2)


re.template(pat) เป็นการสร้าง object Pattern ตามที่รูปแบบที่เราต้องการ เหมือนการ compile


>>>re.template(pat)
>>><_sre.SRE_Pattern object at 0x013576A0>

วันพุธที่ 20 พฤษภาคม พ.ศ. 2552

Regular Expression Syntax (3)

ชุดสุดท้ายใน Regular Expression Syntax

{m} วางไว้หลังอักษรที่ต้องการบอกจำนวนที่ซ้ำได้


>>> import re
>>> my_pattern = 'a{2}'
>>> raw_string = 'a aa a aa'
>>> re.sub(my_pattern,'-',raw_string)
'a - a -'


{m,n} วางไว้หลังอักษรที่ต้องการบอกจำนวนที่ซ้ำได้ โดยระบุเป็นช่วงตัวเลข


>>> my_pattern = 'a{2,4}'
>>> raw_string = 'a aa aaa aaaa aaaaa'
>>> re.sub(my_pattern,'-',raw_string)
'a - - - -a'


[] เป็นการระบุช่วงตัวอักษรที่ต้องการ


>>> my_pattern = '[A-Z]'
>>> raw_string = 'Apple Banana'
>>> re.sub(my_pattern,'-',raw_string)
'-pple -anana'


'|' ใช้ร่วมกับ [] โดยมีความหมายว่า หรือ ใช้คั่นระหว่างตัวอักษรที่ต้องการเลือก


>>> my_pattern = '[c|b]at'
>>> raw_string = 'cat rat bat'
>>> re.sub(my_pattern,'-',raw_string)
'- rat -'


() ใช้จัดกลุ่มให้ข้อความที่อยู่ภายในโดยสามารถใช้ร่วมกับสัญลักษณ์อื่นๆ จากตัวอย่างจะเห็นว่า (ab)+ การซ้ำนั้นจะเป็นการซ้ำของ ab ซึ่งจะแตกต่างกับ ab+ นั้นการซ้ำนั้นจะซ้ำเฉพาะตัว b


>>> my_pattern = '(ab)'
>>> raw_string = 'aa ab bb'
>>> re.sub(my_pattern,'-',raw_string)
'aa - bb'
>>> my_pattern = '(ab)+'
>>> raw_string = 'aa ab abab baba'
>>> re.sub(my_pattern,'-',raw_string)
'aa - - b-a'

วันอังคารที่ 19 พฤษภาคม พ.ศ. 2552

Regular Expression Syntax (2)

มาต่อกับสัญลักษณ์ที่เหลือของ regular expression ในภาษาไพธอน

"." หมายถึง แทนตัวอักษรอะไรก็ได้


>>> import re
>>> my_pattern = '.at'
>>> raw_string = 'I love rat and cat'
>>> re.sub(my_pattern,'dog',raw_string)
'I love dog and dog'


"^" หมายถึง คำที่อยู่ด้านหน้า โดยวางไว้ข้างหน้าคำที่ต้องการค้นหา เหมือน \A


>>> my_pattern = '^dog'
>>> raw_string = 'dog dog dog'
>>> re.sub(my_pattern,'cat',raw_string)
'cat dog dog'


"$" หมายถึง คำที่อยู่ด้านหลัง โดยวางไว้ข้างหลังคำที่ต้องการค้นหา เหมือน \Z


>>> my_pattern = 'dog$'
>>> raw_string = 'dog dog dog'
>>> re.sub(my_pattern,'cat',raw_string)
'dog dog cat'


"*" เอาไว้ท้ายอักษรที่ต้องการสื่อว่าไม่มี หรือ มี และก็ซ้ำได้ด้วย


>>> my_pattern = 'ab*'
>>> raw_string = 'aa , abb , abbb , ba , bb , bc'
>>> re.sub(my_pattern,'-',raw_string)
'-- , - , - , b- , bb , bc'


"+" เอาไว้ท้ายอักษรที่ต้องการสื่อต้องมี และก็ซ้ำได้ด้วย


>>> my_pattern = 'ab+'
>>> raw_string = 'aa , abb , abbb , ba , bb , bc'
>>> re.sub(my_pattern,'-',raw_string)
'aa , - , - , ba , bb , bc'


"?" เอาไว้ท้ายอักษรที่ต้องการสื่อว่าไม่มี หรือ มี แต่ซ้ำไม่ได้


>>> my_pattern = 'ab?'
>>> raw_string = 'aa , abb , abbb , ba , bb , bc'
>>> re.sub(my_pattern,'-',raw_string)
'-- , -b , -bb , b- , bb , bc'

วันอาทิตย์ที่ 17 พฤษภาคม พ.ศ. 2552

Regular Expression Syntax

ส่วนประกอบที่สำคัญในการทำ regular expression คือ ตัว patterns ที่ใช้ในการค้นหา จากคราวที่แล้ว จะพบว่า \b นั้นอยู่ในคำที่ต้องการค้นหา ได้แก่ r'\bROAD\b' ซึ่ง \b เป็น syntax ที่มีความหมายพิเศษ ซึ่งในไพธอนนั้นจะมี syntax และวิธีการใช้แต่ต่างกันไปดังนี้ ขั้นแรกก็


>>>import re


\A หมายถึงต้องเป็นต้นประโยค จากตัวอย่าง Mister จะถูกเปลี่ยนเฉพาะคำแรก

>>>my_pattern = '\AMister'
>>>raw_string = 'Mister python and Mister Thailand'
>>>re.sub(my_pattern,'MR.',raw_string)
'MR. python and Mister Thailand'


\b หมายถึงต้องเป็นขอบของคำ จากตัวอย่างเดิม คำว่า BROAD จะไม่ถูกเปลี่ยนข้างหน้า R ยังมีตัว B ทำให้ R ไม่เป็นขอบของคำ

>>>import re
>>>s = '100 NORTH BROAD ROAD'
>>>re.sub(r'\bROAD\b', 'RD.', s)
'100 NORTH BROAD RD.'


\B ตรงข้ามกับ \b คือคำนั้นต้องเป็นส่วนข้างใน

>>>my_pattern = '\BROAD'
>>>raw_string = 'BROAD ROAD'
>>>re.sub(my_pattern,'RD.',raw_string)
'BRD. ROAD'


\d หมายถึงตัวเลข


>>>my_pattern = '\d'
>>>raw_string = 'credit number 1234-1234-1234'
>>>re.sub(my_pattern,'x',raw_string)
'credit number xxxx-xxxx-xxxx'


\D ตรงข้ามกับ \d คือทุกอย่างที่ไม่ใช่ตัวเลข


>>>my_pattern = '\D'
>>>raw_string = 'credit number 1234-1234-1234'
>>>re.sub(my_pattern,'x',raw_string)
'xxxxxxxxxxxxxx1234x1234x1234'


\s หมายถึงช่องว่าง


>>>my_pattern = '\s'
>>>raw_string = 'a b c d e'
>>>re.sub(my_pattern,'_',raw_string)
'a_b_c_d_e'


\S ตรงข้ามกับ \s คือทุกอย่างที่ไม่ใช่ช่องว่าง


>>>my_pattern = '\S'
>>>raw_string = 'a b c d e'
>>>re.sub(my_pattern,'_',raw_string)
'_ _ _ _ _'


\w หมายถึงตัวอักษรและตัวเลข โดยจะไม่เอาสัญลักษณ์ต่างๆ


>>>my_pattern = '\w'
>>>raw_string = 'a!b#c%d&e.'
>>>re.sub(my_pattern,'_',raw_string)
'_!_#_%_&_.'


\W ตรงข้ามกับ \w คือพวกสัญลักษณ์ต่างๆ

>>>my_pattern = '\W'
>>>raw_string = 'a!b#c%d&e.'
>>>re.sub(my_pattern,'_',raw_string)
'a_b_c_d_e_'


\z หมายถึงต้องอยู่สุดท้ายของข้อความ


>>>my_pattern = 'Mister\Z'
>>>raw_string = 'Mister and Mister'
>>>re.sub(my_pattern,'MR.',raw_string)
'Mister and MR.'

วันศุกร์ที่ 15 พฤษภาคม พ.ศ. 2552

Regular Expression (2)

จากคราวที่แล้วนั้นจะเห็นความจำเป็นที่ต้องให้งาน regular expression ก็มาต่อถึงวิธีการใช้งานโดยขั้นแรกต้องเรียกใช้ module re ก็จะสามารถที่ใช้งานฟังก์ชั่นต่างได้ ซึ่งการเขียน regular expression ในไพธอนนั้นมีรูปแบบในการเขียนแบบเดียวกับภาษา Perl ตัวอย่างต่อเนื่องจากคราวที่แล้วที่ต้องการเปลี่ยนคำว่า ROAD ให้เป็นคำย่อว่า RD


>>>import re
>>>s = '100 NORTH BROAD ROAD'
>>>re.sub(r'\bROAD\b', 'RD.', s)
'100 NORTH BROAD RD.'


จะพบว่าคำที่เปลี่ยน มีแค่ ROAD เป็น RD. แต่ชื่อถนน BROAD นั้นไม่เปลี่ยนแปลง โดยที่ re.sub เป็นฟังก์ชั่นในการค้นหาและเปลี่ยนคำตามที่เราต้องการซึ่งรับข้อมูล ส่วน r'\bROAD\b' เป็นรูปแบบข้อความที่ค้นหา 'RD.' เป็นคำที่ต้องการนำไปแทนที่และ s คือข้อความต้นฉบับ

reference
http://www.diveintopython.org/regular_expressions/street_addresses.html

วันพฤหัสบดีที่ 14 พฤษภาคม พ.ศ. 2552

Regular Expression

regular expression คือการสร้างรูปแบบของข้อความ เพื่อใช้ในการหา,เปลี่ยนแปลง หรือ ตรวจสอบความถูกต้อง

ทำไมต้องใช้ regular expression
ยกตัวอย่าง เมื่อเราต้องการเปลี่ยนคำบางคำเป็นคำย่อ เช่น '100 NORTH MAIN ROAD'
อย่างนี้เราสามารถใช้ replace ในการเปลี่ยนได้ดังนี้


>>> s = '100 NORTH MAIN ROAD'
>>> s.replace('ROAD', 'RD.')
'100 NORTH MAIN RD.'


แต่ถ้าถนนไม่ใช่ MAIN ROAD แต่เป็น BROAD ROAD ผลที่เกิดคือ


>>> s = '100 NORTH BROAD ROAD'
>>> s.replace('ROAD', 'RD.')
'100 NORTH BRD. RD.'


ทำให้ชื่อของถนนนั้นผิด ดังนั้นจึงต้องให้ regular expression ช่วยจัดการครับ

reference
http://www.diveintopython.org/regular_expressions/street_addresses.html

Next >>

วันอังคารที่ 12 พฤษภาคม พ.ศ. 2552

วันจันทร์ที่ 11 พฤษภาคม พ.ศ. 2552

Compile Python

เนื่องจากไพธอนเป็นภาษาแบบ script ซึ่งสามารถทำงานได้เลย โดยไม่จำเป็นที่จะต้องคอมไพล์ก่อน ส่วนมากเมื่อเขียนโปรแกรมเสร็จก็จะสั่งรันโปรแกรมเลยทันทีซึ่งเป็นข้อดีของภาษาแบบนี้ แต่ถ้าจะคอมไพล์ก็ได้ซึ่งมีวิธีการดังต่อไปนี้

เมื่อเขียนโปรแกรมเสร็จแล้ว ก็ลองรันดูก่อนว่าไม่มีข้อผิดพลาด เสร็จแล้ว
ใช้ python shell พิมพ์คำสั่งดังนี้


>>>import py_compile
>>>py_compile.compile("a1.py")


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


>>>import compileall
>>>compileall.compile_dir("dir_name", force=1)


ซึ่ง dir_name นั้นก็เป็นชื่อโฟลเดอร์ที่เก็บไพธอนไฟล์ที่ต้องการคอมไพล์
โดยคำสั่งนี้จะคอมไพล์ได้ทีละหลายไฟล์

วันเสาร์ที่ 9 พฤษภาคม พ.ศ. 2552

Python SDK version 1.2.2 for Google App Engine

Python SDK version 1.2.2 ออกมาแล้ว
Google App Engine ได้ปล่อยตัว SDK ในภาษาไพธอนเวอร์ชั่นใหม่ออกมาซึ่งสามารถดู
รายละเอียดเพิ่มเติม ที่นี่
ดาวโหลดได้ ที่นี่

วันศุกร์ที่ 8 พฤษภาคม พ.ศ. 2552

วันพฤหัสบดีที่ 7 พฤษภาคม พ.ศ. 2552

Python 3.1

ไพธอนเวอร์ชั่นใหม่ออกแล้วเป็นเวอร์ชั่น 3.1 กระโดดจาก 3.0.1
มีรายละเอียดต่างๆดังนี้
  • เพิ่มคลาสใหม่คือ Ordered Dictionaries ซึ่งคล้ายกับ Dictionaries แต่ว่าจะมีการเรียงลำดับโดย key ตั้งแต่เพิ่มข้อมูลเข้าไปเลย
  • เพิ่มรูปแบบในการแบ่งหลักพันของตัวเลข
  • เพิ่มฟังก์ชั่น bit_length ของตัวแปร int
  • ฟิลด์ในฟังก์ชั่น format() จะเรียงลำดับอัตโนมัติ
  • ฟังก์ชั่น round() จะคืนชนิดข้อมูลเป็น int ถ้าใส่ข้อมูลชนิด int จากเดิมจะคืน float
  • และมีการเพิ่มเติมปรับเปลี่ยนและปรับปรุงฟังก์ชั่นอื่นๆอีก
สามารถดูข้อมูลเพิ่มเติมและดาวโหลดได้ เอกสารของไพธอน 3.1

วันพุธที่ 6 พฤษภาคม พ.ศ. 2552

install module

ไพธอนนั้นมีโมดูลเสริมมากมายให้เลือกแล้วแต่ผู้ใช้งานต้องการทำงานอะไรพิเศษเพิ่มเติม เช่น Graphical interface, Database,Image processing, Game, Web, XML และอื่นๆ ซึ่งเราสามารถหาโมดูลมาลงเสริมได้ตามต้องการซึ่งการลงโปรแกรมเสริมใน Window นั้นก็แล้วแต่ผู้ทำโมดูล ถ้าเป็นรูปแบบ exe ก็สามารถรันได้เลยโดยเลือก path ที่ลงไพธอนไว้ แต่ส่วนมากโปรแกรมจะหา path ให้อัตโนมัติ แต่ยังมีอีกรูปแบบคือการลงผ่านคำสั่งในไพธอน ยกตัวอย่าง โมดูล เช่น BeautifulSoup, webmodules นั้นเมื่อดาวโหลดและแตกไฟล์แล้วจะไม่มีไฟล์ exe ให้รันแต่จะมีไฟล์ชื่อ setup.py ซึ่งไฟล์นี้แหละที่จะเป็นตัว install แต่ต้องทำผ่านไพธอน วิธีการคือ เมื่อแตกไฟล์เรียบร้อย ก็ใช้โปรแกรม command ใน Window ไปที่ไดเรกทอรีที่แตกไฟล์ไว้จากนั้นก็ใช้คำสั่ง



python setup.py install


โปรแกรมก็จะทำการลงโมดูลเสริมต่างๆ ซึ่งรายละเอียดลึกๆสามารถหาอ่านเพิ่มเติมได้ที่นี่
เว็บที่รวบรวมโมดูลที่ยอดนิยม http://www.catswhocode.com/blog/python-50-modules-for-all-needs

วันอังคารที่ 5 พฤษภาคม พ.ศ. 2552

วันจันทร์ที่ 4 พฤษภาคม พ.ศ. 2552

Python Editor (2)

Editor ที่มากับ python นั้นยังมี tool ให้ใช้น้อยทำให้การเขียน
โปรแกรมทำได้ไม่ค่อยสะดวกจึงมี Editor ต่างๆขึ้นมาซึ่งมีทั้งฟรี
และเสียเงิน ลองดูรายละเอียดแต่ละโปรแกรมได้ที่
http://wiki.python.org/moin/PythonEditors
เพื่อความคล่องตัวในการเขียนโปรแกรม

วันพฤหัสบดีที่ 30 เมษายน พ.ศ. 2552

Python Editor

ต่อจากคราวที่แล้ว เป็นการเขียนคำสั่งที่รันแสดงผลเลย คราวนี้จะทำการเขียนโปรแกรมหลายๆคำสั่งโดยใช้ตัว Editor ที่มากับโปรแกรมไพธอน ซึ่งขั้นแรกก็ทำการเปิด python shell ขึ้นมาและเลือกเมนู File -> New window ดังรูป



จากนั้นก็จะมีหน้าจอ Editor ขึ้นมาลองเขียนโปรแกรม


for i in range(0,5):
print 'Hello python'


จากนั้นให้ save และตั้งชื่อว่า helloWorld.py
เสร็จแล้วให้เลือกเมนู Run -> Run Module หรือจะกด F5 ก็ได้
python shell ก็จะแสดง

Hello python
Hello python
Hello python
Hello python
Hello python

เป็นอันถูกต้อง

วันพุธที่ 29 เมษายน พ.ศ. 2552

Python Install

ไพธอนเป็นภาษาโปรแกรมมิ่ง ที่มีการทำงานเป็นภาษาสคริปต์เหมือน เช่น perl, php
ซึ่งมีการใช้งานที่ง่าย สามารถเรียนรู้ได้รวดเร็ว มีเครื่องมือที่รองรับมากมาย
ซึ่งสามารถทำงานได้บน Windows, Linux, Mac และอื่นๆ

ก่อนจะเขียนโปรแกรมต้อง download โปรแกรมที่ python.org
โดยเลือกเวอร์ชั่นและ platfrom ที่ต้องการ โดยในตัวอย่างใช้ window นะครับ เมื่อลงโปรแกรมแล้วจะมีเมนูดังนี้








เมื่อเลือก IDLE(Python GUI) ก็จะมี python shell ขึ้นมาจากนั้นทดลองเขียนโปรแกรม


print 'Hello python'

ก็จะมีข้อความขึ้นว่า Hello python ครับ เป็นอันเสร็จสิ้นการทดสอบลงโปรแกรมว่าใช้งานได้

วันอังคารที่ 28 เมษายน พ.ศ. 2552