Devdit
💬 ตัวแปร Python คืออะไร และชนิดตัวแปร
Cat

ตัวแปร Python คืออะไร

ตัวแปรใน Python คือ ชื่อที่ถูกสร้างขึ้นเพื่อเก็บข้อมูลต่างๆ ของโปรแกรม

name = 'Devdit'
version = 123

สร้างตัวแปรชื่อ name เป็นชนิดข้อความ เก็บค่า 'Devdit'

สร้างตัวแปรชื่อ version เป็นชนิดตัวเลข เก็บค่า 123

Devdit
Cat

แล้วชนิดตัวแปร Python คืออะไร

มีอะไรบ้าง

ชนิดตัวแปรคำอธิบายตัวอย่างข้อมูล
intตัวเลขจำนวนเต็ม1, 2, 3, -1, -2, -3
floatตัวเลขทศนิยม10.23, -78.63
complexจำนวนเชิงซ้อน1 + 2x
strข้อความHello Devdit
boolค่าความจริงTrue, False
listรายการ['red', ‘green', ‘blue’]
tupleรายการที่ไม่สามารถเปลี่ยนแปลงได้('red', ‘green’, ‘blue’)
dictพจนานุกรม{'key': ‘value’, … }
setเซ็ต{1, 2, 3}
Devdit
โฆษณา
Cat

ถ้าต้องการประกาศตัวแปรชื่อ a ชนิด int มีค่าเท่ากับ 123

int a = 123

ถูกไหม

ไม่ถูกหากรันจะเกิด

SyntaxError: invalid syntax

เพราะ Python เป็น dynamic typing แปลว่าไม่ต้องกำหนดชนิดตัวแปร

Python จะกำหนดชนิดตัวแปรจากค่าของตัวแปรที่กำหนด

ถ้าจะประกาศตัวแปรชื่อ a ชนิด int มีค่าเท่ากับ 123

a = 123
Devdit
Cat

แล้ว Python มีกฏการตั้งชื่อตัวแปรไหม

1. ขึ้นต้นด้วยอักษรภาษาอังกฤษ หรือขีดล่าง

เช่น name, _version

2. ห้ามมีช่องว่าง หรือสัญลักษณ์พิเศษนอกจากขีดล่าง

3. ห้ามตั้งชื่อซ้ำกับสงวน หรือคำสั่งของ Python

เช่น for, print

4. ควรตั้งชื่อที่สื่อความหมายของค่าที่เก็บ

เช่น name = 'devdit'

มีอีกแต่หลักๆ ก็ประมาณนี้

Devdit
ลิงก์ผู้สนับสนุน
Cat

เคยได้ยิน Snake Case และ Camel Case

เกี่ยวข้องกับตัวแปร Python ยังไง

Snake Case และ Camel Case คือรูปแบบการตั้งชื่อตัวแปรใน Python ที่นิยมกัน

Snake Case จะใช้ขีดล่างเชื่อมชื่อตัวแปรที่มีมากกว่า 2 คำ

เช่น my_name, my_address

Camel Case ตัวอักษรแรกของคำที่มาเชื่อมจะใช้ตัวพิมพ์ใหญ่

เช่น myName, myAddress

Devdit
Cat

แล้วเราจะพิมพ์ค่าตัวแปรออกสู่หน้าจอได้ยังไง

name = 'Devdit'
print(name)
// ผลลัพธ์
Devdit

ถ้าต้องการแสดงข้อความร่วมกับตัวแปร

name = 'Devdit'
print('Hello '+name)
// ผลลัพธ์
Hello Devdit
Devdit
โฆษณา
Cat

ในคำสั่ง print สามารถแสดงค่าตัวแปรมากกว่า 1 ตัวแปรได้ไหม

ได้

name = 'Devdit'
address = 'Thailand'
print('Hello: '+name+' / Address: '+address)
// ผลลัพธ์
Hello: Devdit / Address: Thailand

ใช้เครื่องหมาย + เพื่อเชื่อมข้อความกับตัวแปร หรือตัวแปรกับตัวแปร

Devdit
Cat

ลองเขียนแสดงค่าตัวเลขดู แต่รันไม่ได้

number = 10
print('Number: '+number)
Traceback (most recent call last):
  File "C:\python\code.py", line 2, in 
    print('Number: '+number)
          ~~~~~~~~~~^~~~~~~
TypeError: can only concatenate str (not "int") to str

เกิดจากอะไร

ผิดเพราะ ไม่สามารถเชื่อมข้อความกับตัวแปรชนิดตัวเลขได้ด้วย +

วิธีแก้ไข แปลงตัวแปร number ให้เป็นข้อความด้วย str

number = 10
print('Number: '+str(number))
// ผลลัพธ์
Number: 10
Devdit
ลิงก์ผู้สนับสนุน
Cat

รันโปรแกรมได้แล้ว ขอบคุณ

งั้นขอตัวไปฝึกสร้างตัวแปรด้วย Python ก่อนนะ

OK ขอให้ไม่เจอ Error นะ

Devdit