# Day 2 First Python Program

หลังจากทุกคน Setup Python Interpreter (Anaconda) เรียบร้อยแล้ว ให้เปิด Jupyter Notebook ขึ้นมา มองหาปุ่ม

New -&gt; เลือก Python3 หรือ Python

ท่านจะได้หน้าจอเปล่าๆ ขึ้นมา ข้างบนสุดจะเห็นคำว่า

"Untitled" ท่านสามารถคลิ๊กไปหนึ่งทีตั้งชื่อว่า "My First Python Program" หรืออะไรก็ได้นะครับ แต่ขอเป็นภาษาอังกฤษ

จากนั้นให้ท่านพิมพ์โค้ดลงไปในช่องว่างตรงหน้าจอดังนี้

```plaintext
print("Hello World!")
```

จากนั้นกดปุ่ม Shift+Enter ท่านจะพบว่าคอมพิวเตอร์ได้พิมพ์คำว่า Hello World! ออกมาทางหน้าจอ

นี่คือโปรแกรมแรกของท่าน ในการเขียนโปรแกรมให้คอมพิวเตอร์แสดงค่าออกมาทางหน้าจอ ให้ลองใส่คำอื่นๆ ลงไปใน print อีก เช่น

```plaintext
print("Hello Your Name!!!!")
```

มีหลายๆ อย่างเกิดขึ้นในการพิมพ์คำสั่งเดียวนี้ลงไป Python มันจะเอาโค้ดไปแปลผ่าน Interpreter ที่เราได้ลงไว้ก่อนหน้า แล้วแสดงค่า (ตัวหนังสือ) ออกมาผ่านหน้าจอโดยใช้คำสั่ง print(xxx) นั่นเอง

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

```plaintext
print('this is a text')
```

ท่านสามารถใช้ ' ' เครื่องหมายคำพูดอันเดียวแบบนี้ก็ได้ ให้ผลเหมือนกันครับ ถ้าไม่ใส่ ' หรือ " Python Intepreter มันจะฟ้อง error เองคับ (มันด่าว่าไม่เข้าใจ :D)

ลองดูก็ได้คับจะเห็น error ขึ้นตรงหน้าจอ จากนั้นเราต้องหาให้ได้ว่าผิดตรงไหน แก้แล้วจะรันใหม่ก็กด Shift+Enter เพียงเท่านี้คับ

ชีวิตโปรแกรมเมอร์ อย่างแรกคือเขียนโปรแกรมสั่งการลงไปในคอมพ์ จากนั้นลองสั่งให้รันดู ถ้าไม่มี error ก็ดีไป ถ้ามีก็ต้องแก้ให้ถูกจนกว่ามันจะรับสำเร็จ วนไปแบบนี้คับ

ช่วงแรกๆ ท่านอาจจะมี error เยอะหน่อย เพราะหลายๆ อย่าง หลายๆ คำสั่งต้องจำ และอาศัยความคุ้นเคย เมื่อเจอบ่อยๆเข้าก็จะจำได้เอง เขียนโค้ดได้คล่องขึ้นครับ

### ตัวแปร Variable

เราสามารถเก็บค่าต่างๆ เอาไว้ในในตัวแปร (Variable) ได้ครับ ซึ่งตัว Python Interpreter มันจะเอาไปเก็บไว้ใน memory ของเครื่องอัตโนมัติ เราไม่ต้องสน เราเพียงแค่อยากเก็บค่าบางอย่างเอาไว้ นึกถึงตัวแปรว่ามันเป็นกล่องใส่ของ (ของในที่นี้คือค่าต่างๆ เช่น ค่าน้ำ ค่าไฟ ตัวหนังสือ ฯลฯ)

```plaintext
my_variable = "this is a text"
print(my_variable)
```

เราจะเห็นว่าผมตั้งชื่อตัวแปร my\_variable จริงๆ จะตั้งเป็นอะไรก็ได้คับ แต่มีข้อต้องห้ามบางอย่างเดี๋ยวผมจะบอกในช่วงถัดไป เราเก็บค่า "this is a text" เอาไว้ในตัวแปรนี้ (กล่อง) จากนั้นเราสามารถใช้คำสั่ง print(xxx) แล้วยัด my\_variable ไปใน ( ) เพื่อแสดงตัวหนังสือออกมาตรงหน้าจอ

ท่านสามารถลองสร้างตัวแปรอื่นๆ แล้วแสดงผลออกมาทางหน้าจอดูคับ

```plaintext
my_salary = 100000
print(my_salary)
```

ตัวแปร(กล่อง) นอกจากเอาไว้เก็บตัวหนังสือแล้วยังเก็บตัวเลขได้ด้วย ทั้งเลขและทศนิยม จะสังเกตุว่าผมไม่ได้ใส่ " " หรือ ' ' ระหว่างตัวเลข (ต้องจำนำคับ) เราก็จับตัวแปรยัดเข้า print(xxx) ได้เลย มันจะแสดงค่าออกมาตรงหน้าจอ

### คอมเม้นต์ Comment

เราสามารถเขียนคำอธิบายโค้ดเราลงไปได้ โดย Python จะไม่สนใจคำสั่งนั้น ด้วยการใส่ # หน้าบรรทัดนั้น เช่น

```plaintext
my_salary = 100000

# the lines starts with # Python will ignore
# my_salary = 0

print(my_salary)
```

โค้ดนี้มันจะแสดงผล 100000 ไม่ได้แสดง 0 เพราะว่าโค้ดเหล่านั้นมี # อยู่ด้านหน้า Python Intepreter มันจะไม่สนใจ แล้วมีไว้ทำไม? มีไว้ให้โปรแกรมเมอร์อย่างเราจะไว้เขียนโน๊ตเกี่ยวกับโค้ด เพราะตอนเขียนไม่ลืม หลังจากทิ้งโค้ดไปแล้วหลายวัน หรือเป็นเดือน ความทรงจำจะมีเลือนลาง ได้อ่านคอมเม้นต์บนโค้ดก็จะช่วยให้จำได้ว่าเราเขียนโค้ดให้มันทำอะไรไป

โปรแกรมเมอร์หลายคนมักจะขี้เกียจเขียนคอมเม้นต์ แต่ผมต้องบอกว่ามันจะมีประโยชน์กับตัวเอง และทีมมากๆ ในอนาคตครับ

เอาเป็นว่าวันนี้ท่านเข้าใจถึงการตั้งตัวแปล และแสดงผลออกมาตรงหน้าจอ ทั้งตัวเลข และตัวหนังสือนะคับ
