ชนิดของข้อมูลในภาษาไพธอนมีอะไรบ้าง
ชนิดข้อมูลในภาษาไพธอน มีอะไรบ้าง?
เอ่อ… ไพธอนนะหรอ? ชนิดข้อมูลมันเยอะแยะไปหมดเลยอ่ะ เอาจริงๆ นะ ฉันจำได้ไม่หมดหรอก (หัวเราะ) แต่ที่ใช้บ่อยๆ ก็มีพวก int (จำนวนเต็ม), float (ทศนิยม), str (ข้อความ) แล้วก็ bool (จริง/เท็จ) นี่แหละ ง่ายๆ ดี
แล้วก็จะมี list (รายการ), tuple (คล้าย list แต่เปลี่ยนค่าไม่ได้), set (เซต ที่ไม่เก็บข้อมูลซ้ำ) แล้วก็ dictionary (เหมือนพจนานุกรม เก็บเป็นคู่ key-value) เอ่อ… ประมาณนี้มั้ง?
แต่เอาจริงๆ นะ ไพธอนมันเก่งตรงที่มันมีไลบรารี่เยอะมาก แต่ละไลบรารี่ก็มีชนิดข้อมูลของตัวเองอีกเพียบ! ฉันเคยใช้ Pandas ทำงานกับข้อมูล ก็เจอ DataFrame, Series อะไรพวกนี้ คือมันเยอะจนตาลายอ่ะ
แล้วก็… อ้อ! มี NoneType ด้วยนะ เอาไว้แทนค่าว่างๆ ไม่มีอะไร
คือถ้าให้พูดทั้งหมด ฉันคงต้องเปิดหนังสือเรียนเลยอ่ะ (ฮา) แต่เท่าที่ใช้มาบ่อยๆ ก็ประมาณนี้แหละ หวังว่าพอช่วยได้นะ!
ชนิดข้อมูลพื้นฐาน 9 ชนิด มีอะไรบ้าง
ชนิดข้อมูลพื้นฐาน 9 ชนิด? ไม่ใช่ 8 หรือ?
- boolean: จริงหรือเท็จ
- char: ตัวอักษร 1 ตัว
- byte: จำนวนเต็ม 8 บิต (-128 ถึง 127)
- short: จำนวนเต็ม 16 บิต
- int: จำนวนเต็ม 32 บิต
- long: จำนวนเต็ม 64 บิต
- float: จำนวนทศนิยม 32 บิต (เลขทศนิยม)
- double: จำนวนทศนิยม 64 บิต (เลขทศนิยมที่มีความแม่นยำสูงกว่า float)
- string: ลำดับของตัวอักษร (หลายแหล่งไม่นับเป็นชนิดข้อมูลพื้นฐาน)
ผมใช้ Java 17 เป็นหลัก ข้อมูลอาจเปลี่ยนแปลงตามเวอร์ชัน อย่าไว้ใจใครง่ายๆ โลกแห่งการเขียนโปรแกรมโหดร้ายเสมอ
ชนิดของตัวแปรในภาษาไพทอน มีอะไรบ้าง
ตัวแปรในไพทอน พ.ศ. 2566 มีหลายชนิด สำคัญๆ ได้แก่:
- Integer (int): จำนวนเต็ม เช่น 10, -5, 0
- Float (float): จำนวนทศนิยม เช่น 3.14, -2.5
- String (str): ข้อความ เช่น "Hello", 'Python'
- Boolean (bool): ค่าความจริง True หรือ False
- List: ลำดับข้อมูลที่เปลี่ยนแปลงได้ เช่น [1, 2, 'a']
- Tuple: ลำดับข้อมูลที่ไม่เปลี่ยนแปลงได้ เช่น (1, 2, 'a')
- Dictionary (dict): เก็บข้อมูลแบบ คู่ คีย์-ค่า เช่น {'name': 'John', 'age': 30}
- Set: กลุ่มข้อมูลที่ไม่ซ้ำกัน เช่น {1, 2, 3}
- NoneType: ค่าว่าง แสดงถึงการไม่มีค่า
Float กับ Integer ต่างกันที่การมีจุดทศนิยม แค่นั้นแหละ คณิตศาสตร์พื้นฐาน
ชนิดข้อมูล (Data Type) มีอะไรบ้าง
เฮ้อ… กลางดึกอีกแล้วเนอะ คิดอะไรเรื่อยเปื่อยไปหมด เรื่องชนิดข้อมูลนี่ก็เหมือนกัน… มันวนเวียนอยู่ในหัวตลอดเลย
จำได้ว่าเรียนมา… ภาษาซีแบ่งชนิดข้อมูลหลักๆ ไว้สี่แบบ ตอนนั้นงงๆ นะ แต่พอมาคิดดูตอนนี้… ก็เข้าใจขึ้นบ้างแล้วแหละ
void: อันนี้คือ… ไม่มีค่าอะไรเลย ว่างเปล่า จำได้ว่าใช้กับฟังก์ชันที่ไม่คืนค่า เหมือนเป็นตัวบอกว่ามันไม่ส่งอะไรกลับมา ตอนเรียนอาจารย์ยกตัวอย่าง… แต่ฉันก็ลืมไปแล้วแหละ
char: ตัวอักษร ง่ายๆ เก็บตัวอักษรได้ตัวเดียว A, B, c… อะไรแบบนี้ ไม่ใช่คำนะ แค่ตัวเดียวจริงๆ
int: จำนวนเต็ม นี่แหละสำคัญ ใช้บ่อยมาก 1, 2, 100, -5 พวกนี้แหละ ไม่มีทศนิยม
float/double: เลขทศนิยม นี่ก็ใช้บ่อย แต่ float แม่นยำน้อยกว่า double จำได้คร่าวๆ ว่า… double เก็บได้ละเอียดกว่า
ปีนี้ รู้สึกเรียนหนักกว่าปีก่อนเยอะ งานโปรเจคก็เยอะ บางทีก็เหนื่อย นอนไม่ค่อยหลับ คิดถึงตอนเรียนจบแล้ว… จะสบายขึ้นมั้ยนะ
จริงๆ แล้ว ยังมีชนิดข้อมูลอื่นๆ อีกนะ อย่าง long, short, unsigned… แต่พวกนั้น ก็คือ int กับ float/double แหละ แค่เปลี่ยนขนาด หรือ วิธีการเก็บข้อมูล ให้เหมาะกับการใช้งานมากกว่า
เออ… พรุ่งนี้ต้องตื่นเช้าไปทำงานอีกแล้ว คิดแล้วก็เหนื่อย นอนดีกว่า…
ข้อใดคือชนิดข้อมูลแบบพื้นฐาน
ชนิดข้อมูลพื้นฐาน หรือ Primitive Types นะ ก็คือพวก ข้อมูลเบสิกๆ เลยอะ
- ตัวเลข: เลขจำนวนเต็ม เลขทศนิยม อ่ะะ
- ตัวอักษร: พวก a, b, c ไรงี้ ตัวเดียวๆ นะ
- บูลีน: จริง เท็จ อ่ะ เออ แค่นั้น
มันจะเก็บไว้ในเมมโมรีแบบตรงๆ เลย ไม่ต้องไปอ้างอิงอะไรวุ่นวาย แล้วพอเรากำหนดไปแล้วนะ มันก็เปลี่ยนชนิดไม่ได้ด้วย สำคัญเลยนะอันนี้
ชนิดข้อมูลมีกี่ชนิด อะไรบ้าง
อื้อ ชนิดข้อมูลเนี่ยเหรอ เยอะแยะเลยนะ จำได้คร่าวๆ ก็มีหลายแบบอ่ะ แบบที่เรียนมาปีนี้ก็ประมาณนี้แหละ
- Integer เลขจำนวนเต็ม แบบ 1, 2, 3, -1 อะไรแบบนี้ ง่ายๆ
- Float เลขทศนิยม เช่น 3.14 2.718 เห็นมั้ย มีจุดทศนิยม
- Octal เลขฐานแปด อันนี้จำไม่ค่อยได้เท่าไหร่ มึนๆ แต่ก็เป็นระบบเลขฐานอีกแบบนึงแหละ
- Hexadecimal เลขฐานสิบหก เหมือนกัน จำไม่ค่อยได้ เรียนไปก็ลืมไป อิอิ
- Character ตัวอักขระ คือตัวหนังสือ สัญลักษณ์ต่างๆ A, B, C หรือ !, @, # ประมาณนั้น
- String ข้อความ ก็คือ รวมๆ ตัวอักขระหลายๆ ตัว เป็นประโยค หรืออะไรก็ได้ ยาวๆสั้นๆ
จำได้แค่นี้แหละ จริงๆ อาจจะมีมากกว่านี้ด้วยมั้ง แต่ที่จำได้ก็ประมาณนี้แหละ มัวแต่เล่นเกมส์ เลยไม่ค่อยได้ตั้งใจเรียนเท่าไหร่ 555 บทเรียนที่ 4 ใช่ป้ะ คือ เพื่อนในกลุ่มบอกว่า อาจารย์สอนง่ายมาก แต่กุก็งงอยู่ดีอ่ะ
ปล. เว็บที่ให้มา เข้าไม่ได้เลย เปิดไม่ขึ้น ลองเช็คดูอีกทีนะ
ชนิดข้อมูลคืออะไร
ชนิดข้อมูลอะหรอ? อืม… มันก็คือแบบว่า ชนิดของข้อมูล ไง ที่เราใช้ในโปรแกรมอะ
คือแบบ คอมพิวเตอร์มันต้องรู้ไง ว่าข้อมูลแต่ละอันเป็นอะไร จะได้จัดการถูก
Primitive (แบบพื้นฐาน): อย่างเช่น ตัวเลข (number), ข้อความ (string), จริง/เท็จ (boolean) อะไรแบบเนี้ย ง่ายๆเลย
Non-Primitive (แบบซับซ้อนขึ้นมา): อันนี้ก็พวก array (อาเรย์), object (ออบเจ็กต์) ที่มันเก็บข้อมูลหลายๆ อย่างรวมกันได้
ทำไมต้องมี? ก็เพื่อว่าคอมพิวเตอร์จะได้รู้ว่าต้องทำอะไรกับข้อมูลนั้นได้บ้างไง เช่น เอาเลขมาบวกกันได้ เอาข้อความมาต่อกันได้ แต่เอาเลขมาต่อกับข้อความไม่ได้ไง เข้าใจปะ? สำคัญอยู่นะเรื่องเนี้ย!
เออ แล้วก็ JavaScript นะ มันเป็นภาษาที่เราใช้บ่อยๆ เวลาทำเว็บอะ มันก็มีชนิดข้อมูลพวกนี้แหละ ที่บอกไปเมื่อกี้ เป๊ะเลย!
เออๆ นึกออกละ!
Primitive เนี่ย มันเก็บค่า โดยตรง เลยในหน่วยความจำ
Non-Primitive เนี่ย มันเก็บ ที่อยู่ ของข้อมูลไว้เฉยๆ ไม่ได้เก็บข้อมูลจริงๆ
อันนี้สำคัญนะ บางทีทำให้งงได้เลยถ้าไม่เข้าใจเรื่องนี้อะ
ชนิดของข้อมูลมีอะไรบ้าง
โอเค มาลองดู ชนิดข้อมูลนะ มีอะไรบ้างเนี่ย
- ตัวเลข int float คือแบบ 1 2 3 4.56 อะไรแบบนี้ เออ แล้วถ้าเป็นเลขเยอะๆ ล่ะ? ต้องใส่ comma ป่ะ?
- Boolean นี่ true false ชัดเจนดี จบ! ง่ายเกิ๊น
- None คือไม่มีอะไรเลย ว่างเปล่า จบอีกละ
- Sequence นี่ list tuple string ใช่ป่ะ? ลิสต์เปลี่ยนได้ tuple เปลี่ยนไม่ได้ สตริงคือตัวอักษรเรียงกัน เออ แล้ว byte array ล่ะ? นับไหม?
- Set นี่คือพวกไม่มีลำดับ ซ้ำไม่ได้ ปวดหัวนิดนึง
- Dictionary นี่ key value ใช่ป่ะ? เหมือนพจนานุกรมเลย ต้องมีคำศัพท์กับคำแปล เออ แล้ว key ต้องเป็นอะไรได้บ้างอ่ะ?
เออ ลืมไปเลย ต้องเช็คชนิดข้อมูลด้วย type() สินะ ง่ายดี
ชนิดข้อมูลพื้นฐาน 9 ชนิด มีอะไรบ้าง
เอาล่ะ นี่คือ 9 ชนิดข้อมูลพื้นฐาน จริง ๆ แล้วมีแค่ 8 ไอ้คนเขียนเว็บนั้นมันคงมั่ว
- boolean: จริงหรือเท็จ แค่นั้นแหละ
- char: ตัวอักษรตัวเดียว จำไว้
- byte: จำนวนเต็ม 8 บิต เล็กนิดเดียว
- short: จำนวนเต็ม 16 บิต ก็ยังเล็กอยู่
- int: จำนวนเต็ม 32 บิต ใช้บ่อย
- long: จำนวนเต็ม 64 บิต ใหญ่กว่า int
- float: จำนวนทศนิยม 32 บิต ไม่ค่อยแม่นยำนัก
- double: จำนวนทศนิยม 64 บิต แม่นยำกว่า float
- (เพิ่มเติมจากไอ้เว็บนั้น) String: นี่มัน reference type ไม่ใช่ primitive อย่าไปงง
ปีนี้ก็ยังงี้แหละ ไม่เห็นเปลี่ยนแปลงอะไร โค้ดฉันใช้แบบนี้มาตั้งแต่ปีที่แล้ว ไม่เคยมีปัญหา
ชนิดของข้อมูลพื้นฐานในการเขียนโปรแกรมมีอะไรบ้าง
ชนิดข้อมูลพื้นฐานในการเขียนโปรแกรมอ่ะเหรอ? เออๆ นึกออกละ มีหลายอย่างนะ
- เลขจำนวนเต็ม (Integer): พวกเลข 1, 2, 100, -5 ไรงี้ ไม่มีเศษทศนิยมนะจ๊ะ
- เลขทศนิยม (Float): อันนี้มีจุดทศนิยม อย่าง 3.14, 2.71, -0.5 อะไรแบบนี้
- ตัวอักขระ (Character): ตัวเดียวโดดๆอ่ะ a, b, C, *, $ ไรงี้ ต้องอยู่ใน ' ' นะ ปกติ
- ข้อความ (String): อันนี้เป็นชุดตัวอักษร หลายตัวรวมกัน "Hello World", "ฉันชื่อ..." ต้องอยู่ใน " "
- เลขฐานแปด (Octal): อันนี้ไม่ค่อยได้ใช้เลยอ่ะ แต่มันคือเลขฐาน 8 (0-7) มักจะนำหน้าด้วย 0o เช่น 0o377
- เลขฐานสิบหก (Hexadecimal): อันนี้ก็ไม่ค่อยเจอเท่าไหร่ แต่ใช้ในพวกสีอ่ะ พวก #FFFFFF คือเลขฐานสิบหก (0-9, A-F) นำหน้าด้วย 0x เช่น 0xFF
เกร็ดเล็กเกร็ดน้อย:
- บางภาษามี boolean ด้วยนะ (true/false) เอาไว้เช็คเงื่อนไข
- บางทีก็มีพวก array หรือ list เอาไว้เก็บข้อมูลหลายๆ ตัวในที่เดียว
- เดี๋ยวนี้มี data type แปลกๆ เยอะแยะเลย ขึ้นอยู่กับภาษาที่เราใช้อ่ะ
- ตอนเขียนโปรแกรม ต้องเลือกชนิดข้อมูลให้ถูกนะ ไม่งั้น error แน่นวลลลล
ความคิดเห็นต่อคำตอบ:
ขอบคุณสำหรับความคิดเห็นของคุณ! ความคิดเห็นของคุณมีความสำคัญมากในการช่วยเราปรับปรุงคำตอบในอนาคต