Input / Output and f-string — แบบฝึกทบทวน
. . .
Note
ครอบคลุม: input() · การแปลงชนิด · input().split() · print() · f-string ทบทวนเนื้อหาเต็มได้ที่ Module 3b 👈
เลือกคำตอบที่ถูกต้อง — เฉลยจะปรากฏเมื่อกดถัดไป
input() คืนค่าเป็นชนิดใด เสมอ?
A. int
B. str
C. float
D. ขึ้นกับสิ่งที่พิมพ์
Tip
ตอบ: B — input() ได้ str เสมอ ต้องแปลงชนิดเองถ้าต้องการตัวเลข
ต้องการรับ จำนวนเต็ม จาก user ควรเขียนอย่างไร?
A. input()
B. int(input())
C. str(input())
D. input(int)
Tip
ตอบ: B — ครอบ input() ด้วย int() เพื่อแปลง string เป็นจำนวนเต็ม
data = input().split() ได้ผลลัพธ์เป็นชนิดใด?
A. str
B. list
C. tuple
D. int
Tip
ตอบ: B — .split() คืนค่าเป็น list ของ string
ป้อน 10 20 30 แล้วเรียก input().split() ได้ผลใด?
A. '102030'
B. ['10','20','30']
C. [10,20,30]
D. error
Tip
ตอบ: B — .split() ตัดด้วยช่องว่าง ได้ list ของ string (ยังไม่ใช่ตัวเลข)
จะแทรกค่าตัวแปร x ลงใน string ด้วย f-string เขียนอย่างไร?
A. '{x}'
B. f'{x}'
C. f'(x)'
D. 'f{x}'
Tip
ตอบ: B — ใส่ f นำหน้า string แล้วแทรกตัวแปรใน { }
ถ้า ลืมใส่ f นำหน้า เช่น '{x}' (x = 5) จะได้อะไร?
A. 5
B. ข้อความ {x} ตรง ๆ
C. error
Important
ตอบ: B — ไม่มี f → เป็น string ธรรมดา {x} ไม่ถูกแทนค่า
pi = 3.14159 — f'{pi:.2f}' ให้ผลใด?
A. '3.14'
B. '3.1'
C. '3.14159'
D. '3'
Tip
ตอบ: A — :.2f = ทศนิยม 2 ตำแหน่ง
a = 3 (ตัวเลข) — f'{a:5}' จัดข้อความชิดด้านใด?
A. ชิดซ้าย
B. ชิดขวา
C. กึ่งกลาง
Tip
ตอบ: B — ตัวเลขในความกว้างที่กำหนด → ชิดขวา (string จะชิดซ้าย)
a, b = input().split() แต่ผู้ใช้พิมพ์ 3 คำ จะเกิดอะไร?
A. เก็บ 2 คำแรก
B. ValueError
C. เก็บเป็น list
Important
ตอบ: B — จำนวนตัวแปรซ้าย ต้องพอดี กับจำนวนคำที่ split ได้ ไม่งั้น ValueError
เติมโค้ดในช่อง ____ แล้วกด Run
Important
⚠️ input() ไม่ทำงานบนสไลด์ — จำลองค่าด้วย string แทน (เช่น name = 'Ploy')
เติมโค้ดให้แสดงผล Hello, Ploy. Nice to meet you! ด้วย f-string
gpa = 3.5 — แสดงผลด้วย f-string เป็นทศนิยม 2 ตำแหน่ง
เติมโค้ดแปลงค่าจาก input() (string) ให้เป็น int แล้วยกกำลังสอง
แยก ชื่อ และ นามสกุล จากข้อความเดียว ด้วย .split()
a = 7 — จัดให้แสดงในความกว้าง 5 ช่อง ด้วย f-string
โค้ดจะพิมพ์อะไร? — ทายก่อน แล้วกดถัดไปดูเฉลย
Tip
ผลลัพธ์: Total: 300 baht — f-string คำนวณนิพจน์ใน { } ได้ → 100 * 3 = 300
Important
ผลลัพธ์: 3.14 3 — :.2f = ทศนิยม 2 ตำแหน่ง · :.0f = ปัดเป็นจำนวนเต็ม (0 ตำแหน่ง)
ไล่ค่า และชนิด ของตัวแปรทีละบรรทัด
เติมค่าและชนิดของ x หลังแต่ละบรรทัด
| บรรทัด | x |
ชนิด |
|---|---|---|
| 1 | '6' |
str |
| 2 | ? | ? |
| 3 | ? | ? |
Tip
| บรรทัด | x |
ชนิด |
|---|---|---|
| 1 | '6' |
str |
| 2 | 6 |
int |
| 3 | 10 |
int |
ต้อง int() ก่อน x ถึงจะบวกเลขได้ (ถ้ายังเป็น str + 4 จะ error)
โค้ดผิดตรงไหน — ทำไม
อยากได้ Hello, Ploy! แต่ได้ Hello, {name}! — ผิดตรงไหน?
Important
ผิด: ลืมใส่ f นำหน้า string → {name} ไม่ถูกแทนค่า แก้: print(f'Hello, {name}!')
จัดรูปแบบผลลัพธ์การวัด/คำนวณด้วย f-string
เติมโค้ดแสดงค่าอุณหภูมิเป็นทศนิยม 2 ตำแหน่ง พร้อมหน่วย
Tip
ผลลัพธ์: V = 165.0 V — f-string คำนวณ I*R แล้วจัดเป็นทศนิยม 1 ตำแหน่ง
Tip
ผลลัพธ์: Efficiency: 90.0% — คำนวณ output/input×100 แล้วจัดทศนิยม 1 ตำแหน่งใน f-string
รวมหลายขั้น: แยกข้อมูล → แปลงชนิด → คำนวณ → จัดรูป
รับ "80 90 70" แล้วหาค่าเฉลี่ย แสดงทศนิยม 2 ตำแหน่ง
ทบทวนเนื้อหาเต็มได้ที่ Module 3b · กลับไป Module 3a
🏠 259201 — Module 3b ทบทวน | ภาควิชาวิศวกรรมคอมพิวเตอร์ คณะวิศวกรรมศาสตร์ มหาวิทยาลัยเชียงใหม่