loop for Python 1 line เขียนลูป ภาษาไพทอนใน 1 บรรทัด

Preechaik
2 min readAug 13, 2020

--

“จุดประสงค์ต้องการมาดูเผื่อลืม” ในบทความนี้จะอธิบายถึงการทำงาน ของ loop for เบื้องต้นและเปรียบเทียบ loop for แบบปกติ

เริ่มจาก [thing for thing in list_of_things]

thing = สิ่งที่ต้องการ print ออกมา

for thing in list_fo_things = คือการทำงาน ของ loo for ทั่วไป

ตัวอย่างการใช้งาน

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

print([i for i in ‘preechai’])

Output> [‘p’, ‘r’, ‘e’, ​​’e’, ​​’c’, ‘h’, ‘a’, i ‘]

ตัวอย่างการใช้งาน for ซ้อน for

แถมการเขียน short if in python

โจทย์การตัดเกรด โดยมีเงื่อนไข ดังนี้

>0 = F

≥50 and <60 = D

≥60 and <70 = C

≥70 and <80 = B

≥ 80 and ≤100 = A

ที่มาโค๊ด https://www.youtube.com/watch?v=2XJDADAyVc8

print((score < 0 or score > 100) and “error” or “FFFFFDCBAAAA”[score//10])

ซึ่งการทำงานของบรรทัดที่ 2 นั้น อธิบายได้ดังนี้ มีการกำหนด and เป็นจริง or เป็นเท็จ

(score < 0 or score > 100) หมายถึง or ในเงื่อนไขนี้คือการเปรียบเทียบคะแนนถ้าเงื่อนไขคะแนนน้อยกว่าศูนย์หรือคะแนนมากกว่าหนึ่งร้อยจะแสดงคำว่า error ถ้าไม่ใช่จะทำการคิดเกรด

“FFFFFDCBAAAA”[score//10]) เอาคะแนนที่ได้หารด้วยสิบแล้วปัดเศษทิ้ง เพื่อเอามาหาตำแหน่งว่าอยู่ใน index ที่เท่าไหร่แล้วแสดงผล

อีกตัวอย่าง

การหาเลขคู่ คี่ โดยใช้เงื่อนไข if else

print(‘hello Word’) if 3>2 else print(‘Word Hello’)

print({True:‘hello’, False:‘Word’}[3< 30])

ขอบคุณที่มาชมครับผิดพลาดยังไงแนะนำได้ครับ

--

--

No responses yet