PDA

View Full Version : python :: ง่าย อย่างที่ไม่เคยเป็นมาก่อน



okays
24-01-2008, 01:57 PM
01 getting started (1)

1.comment #
ในภาษา python จะใช้ ตัวอักษร # ในการเขียน comment เพียงอย่างเดียว ดังนั้นจะไม่มี การเขียน comment ที่มากกว่า1บรรทัดได้

2.variable and Assignment
case sensitive ดั้งนั้น ตัวอักษรตัวเล็กตัวใหญ่จะมีค่าไม่เท่ากัน
ตังอักษรที่ใช้ได้คือ a-z A-Z และ _
การให้ค่าตัวแปรจะใช้เครื่องหมาย = เช่น a = 3

3.operator
mathematical operators
+ บวก เช่น 1+2 = 3
- ลบ 1-2 = -1
* คูณ 2*3 = 6
/ หาร 6/3 = 2
// หาร 6//3 = 2
% หารเอาเศษ 5%2 = 3
** ยกกำลัง 5**2 = 25

comparison operators
< น้อยกว่า
<= น้อยกว่าหรือเท่ากับ
> มากกว่า
>= มากกว่าหรือเท่ากับ
== เท่ากับ
!= ไม่เท่ากับ
<> ไม่เท่ากับ

conjunction operators
and และ
or หรือ
not ไม่

4.Numbers
int ตัวเลขธรรมดเป็นได้ทั้งบวกและลบ เช่น 1
long ตัวเลขขนาดยาวสามารถเป็นฐาน 8 และ 16 ได้
float ตัวเลขมีจุดทศนิยม
complex ตัวเลขซับซ้อน เช่น 1+3j
boolean ค่าความจริงหรือเท็จ False, 0, None และ True, 1


5.Strings
การเขียน String มีได้ 2 แบบ อยู่ใน " หรือ &#39; ใน python จะไม่มี

charactor แต่จะมี String ที่มีตัวอักษรตัวเดียว
ตัวอย่าง String
เช่น str = "text"
หรือ str = &#39;text&#39;

>>> str [0]
&#39;t&#39;
>>> str [1:2]
&#39;ex&#39;
>>> str [:2]
&#39;te&#39;
>>> str [2:]
&#39;xt&#39;
>>> str [-1]
&#39;t&#39;

6.Lists and Tuples
Lists จะต้องเขียนข้อมูลอยู่ในก้ามปู ( [ ] ),
tuples จะต้องเขียนข้อมูลอยู่ในวงเล็บ ( ( ) )

myList = [&#39;t&#39;,&#39;e&#39;,&#39;x&#39;,&#39;t&#39;]
#เป็น List ที่เก็บ String
>>> myList [0]
[&#39;t&#39;]
>>> myList [1:2]
[&#39;ex&#39;]
>>> myList [:2]
[&#39;t&#39;,&#39;e&#39;]
>>> myList [2:]
[&#39;x&#39;,&#39;t&#39;]
>>> myList [-1]
[&#39;t&#39;]
>>> myList
[&#39;t&#39;,&#39;e&#39;,&#39;x&#39;,&#39;t&#39;]

aTuple = (&#39;t&#39;,&#39;e&#39;,&#39;x&#39;,&#39;t&#39;)
tuple จะคล้าย List แต่จะไม่สามารถ assign ค่าได้

7.Dictionaries
ความหมาย dictionary คือ หนังสือสำหรับค้นความหมายของคำที่เรียงลำดับ

ตามตัวอักษร ดังนั้น ในภาษา python ก็จะหมายถึง การจับชื่อตัวแปรกับ value

>>> myDict = {}
>>> myDict[&#39;host&#39;] = &#39;earth&#39;
>>> myDict[&#39;port&#39;] = 80
>>> myDict
{&#39;host&#39;: &#39;earth&#39;, &#39;port&#39;: 80}
>>> myDict.keys()
[&#39;host&#39;, &#39;port&#39;]
>>> myDict.values()
[&#39;earth&#39;, 80]
>>> myDict[&#39;host&#39;]
&#39;earth&#39;

8.Code Blocks Use Indentation
การจบ statment จะใช้การขึ้นบรรทัดใหม่
block จะใช้การเยื้องของตัวอักษรเป็นตัวเปิดปิด จะไม่มี {} เหมือนภาษาจาวา

9.if Statement

[code]if expr :

okays
24-01-2008, 02:20 PM
02 - getting started (2)

11.Files and the open() Built-in Function

file(name[, mode[, buffering]])


สร้างfile ขึ้นมา 1 fileที่ชื่อว่า "file.txt" ลงใน path ที่มี python อยู่ดังนี้

line 1
line 2
line 3
line 4
line 5


>>> myfile = open("file.txt", &#39;r&#39;)
>>> for eachLine in myfile:
print eachLine

ผลลัพธ์

line 1

line 2

line 3

line 4

line 5


>>> myfile.close()

เป็นการเปิด file "file.txt" แล้วเอาข้อมูลออกมา print แต่ละบรรทัด โดยสังเกตว่าจะมีการ เว้นบรรทัดสองบรรทัด เพราะว่ามีการอ่านข้อมูลแต่ละบรรทัดพร้อมกับ \d\a (เว้นบรรทัด) และต้องใช้ method close เพื่อปิดไฟล์

12.Errors and Exceptions
เป็นการดักจับ error เมือมีข้อผิดพลาดเกินขึ้นกับโปรแกรม



try :
stmt
except someError :
stmt

13.Functions
การประกาศ


def function_name([ arguments]):

"เขียน document เพื่อให้คนที่ใช้อ่านได้ "
function_suite

เช่น
[code]
def multiply(x):

okays
24-01-2008, 02:53 PM
03 Syntax and Style (1)

1.Statements and syntax
Comments ( # )
เช่น
# comment จะไม่มีผลต่อโปรแกรมแต่จะให้อ่าน code ได้ง่ายขึ้น

Continuation ( \ )
ใน python 1 statement ต่อหนึ่ง line เท่านั้น ถ้าต้องการเขียน 1 statement มากกว่า1 บรรทัดต้องใช้เครื่องหมาย ( \ )
เช่น
[code]if (weather_is_hot == 1) and \
(shark_warnings == 0) :

pspn.n
24-01-2008, 10:34 PM
Good job!!!! :-)

จะเห็นว่าหากเราเขียนได้ภาษาหนึ่งแล้ว ภาษาอื่นๆ ก็ไม่ยาก ดูอย่าง python นี้ก็มีต้นแบบมากจาก c และ c++
ดังนั้น หากมีเวลาลองดูภาษา c/c++ บ้างก็ดีนะ มันจะทำให้เราเป็นทั้น python, PERL, PHP เลยทีเดียว

ctrlyati
17-05-2008, 03:08 AM
เป็นบทความที่ดีมากเลยครับ
ผมกำลังต้องการศึกษา phyton อยู่เลยครับ

ผมเองก็พยายามสร้างเกม 3D ด้วย python
(Panda 3D หน่ะครับ)

มันมีแต่คู่มือภาษา อังกฤษ
ขอบคุณอีกครั้ง

domesterz
22-07-2008, 09:21 PM
บทความนี้ดีมากสำหรับเริ่มต้นสรุปเรื่องต่างๆไว้เข้าใจง่าย และได้ใจความ หวังว่าคงมาเขียนเพิ่มต่ออีกนะครับ (เพราะเรื่องมันยังอีกเยอะ) ขอบคุณครับ

think2you
21-08-2008, 07:24 AM
บทความนี้ดีมากเลยครับ สำหรับผู้เริ่มต้นที่จะเขียนภาษาphyton ภายนอกอาจดูว่ายาก แต่ หากมาศึกษาจะเข้าใจมากขึ้นครับ

lizacomit
23-08-2008, 02:42 PM
สนใจมานานแย้ววววว...เพราะ program ที่ใช้เรียน...ก้อมีตัวนี้ด้วยเหมือนกัน..

demonxloki
24-08-2008, 04:12 PM
คำสั่งภาษานี้สั้นกะทัดรัดมากเลยครับ
เมื่อเทียบกับภาษาอื่นๆ
เป็นคำสั่งที่ค่อนข้างใช้งานง่ายมากจริงๆ
นับว่าเป็นภาษาที่น่าศึกษาอีกภาษานึงเลยทีเดียว
และน่าััจับตามองว่าอาจจะเข้ามาเป็นที่นิยมในบ้านเราเลยก็ได้ครับ

varavut2
30-08-2008, 04:32 PM
ขอบคุณมากครับสำหรับความรู้
เป็นบทความที่ดีมากเลยครับ
ผมพึ่งจะได้ลองเขียนpythonมาไม่นานนี้เอง

zabzab
10-10-2008, 03:08 PM
เคยสนใจอยากศึกษา Python เหมือนกันแต่คนเล่นยังไม่มาก
ตอนนี้ยังเล่น PHP MYSQL ไปตามยุคตามสมัยนิยม
ยังไงก็ขอลอกข้อความไว้ก่อน มีเวลาจริงๆ ก็จะลองเล่นดู
ยังไงก็ขอบคุณสำหรับบทความนี้

PopJ
20-10-2008, 09:44 PM
ผมก็เรียนภาษา python พ.ฐ. มาพอสมควร
ก็พบว่า ภาษานี้ง่ายจริงๆครับ
เหมาะสำหรับคนที่เริ่มเขียนโปรแกรมจริงๆ ลองฝึกกันเยอะๆนะครับ

ภาษา python ใช้เขียนพวก โปรแกรม บิต หรือแม้กระทั่ง เว็บของ google

เสริมบทความให้นิดนึงครับ
ตรง module มีวิธีการ import อีกแบบคือ

>>> from module import *

>>> functionmodule()

เช่น

>>> from math import *

>>> sqrt(4)

2

จะดีตรงเวลาเรียกใช้ ฟังก์ชั่นใน โมดูล ไม่ต้องพิมพชื่อ โมดูลทุกครั้งครับ

asylu3
21-10-2008, 10:10 AM
ขอย้ายไปห้อง python
ปล. หากมี code ครอบด้วย Tag code ด้วยนะครับ http://citec.us/forum/style_images/subblack_s/folder_rte_images/code.gif

demonxloki
19-12-2008, 01:00 PM
ภาษานี้เขียนง่ายมากครับ
มีความยืดหยุ่นสูงมากๆ
และก็ใกล้เคียงภาษาคนมากด้วยครับ
เหมือนกับเราจะ print text ก็เขียน print &#39;text&#39; ได้เลย
การ import module ก็เขียนง่ายมากครับเหมือนคำพูดของคนมากเลย
เช่น จะ import pygame ก็เขียน import pygame
หรือจะ import locals
from pygame.locals import*
การประกาศตัวแปรก็ไม่ต้องระบุประเภทเลยครับ
คอมไพล์เลอร์มันอัจฉริยะมาก(มันรู้เองครับ)
ประกาศลิสท์ง่ายมาก
พอเขียนได้ซักอาทิตย์นึงจะเริ่มชินกับ syntax แล้วครับ
แต่พอกลับมาเขียนจาวาอีกโดยส่วนตัวแล้วจะรู้สึกว่าการทำ gui ของจาวานั้นค่อนข้างง่ายกว่าครับ
อาจเป็นเพราะเรียนจาวามาปีนึงแล้วมั้ง...แต่เพิ่งเริ่มเรียนไพธ่อนมาไม่นานแล้วก็มุ่งไปที่ pygame gtk และ Tkinter
ซะเป็นส่วนใหญ่