มีความแตกต่างอย่างมีนัยสำคัญระหว่างสองคำหลามcontinueและpassเหมือนในตัวอย่าง
for element in some_list:
    if not element:
        passและ
for element in some_list:
    if not element:
        continueฉันควรระวัง?
มีความแตกต่างอย่างมีนัยสำคัญระหว่างสองคำหลามcontinueและpassเหมือนในตัวอย่าง
for element in some_list:
    if not element:
        passและ
for element in some_list:
    if not element:
        continueฉันควรระวัง?
คำตอบ:
ใช่พวกเขาทำสิ่งต่าง ๆ โดยสิ้นเชิง  passไม่ทำอะไรเลยในขณะที่ยังcontinueวนซ้ำถัดไป ในตัวอย่างของคุณความแตกต่างจะชัดเจนหากคุณเพิ่มคำสั่งอื่นหลังจากif: หลังจากดำเนินการpassคำสั่งเพิ่มเติมนี้จะถูกดำเนินการ หลังจากนั้นcontinueก็จะไม่
>>> a = [0, 1, 2]
>>> for element in a:
...     if not element:
...         pass
...     print element
... 
0
1
2
>>> for element in a:
...     if not element:
...         continue
...     print element
... 
1
2passคำหลักไม่ได้ทำอะไรเลยมันมีประโยชน์เฉพาะเมื่อคุณต้องมีชุดข้อความที่เยื้องเข้ามา แต่ไม่ต้องการทำอะไรเลย except SomeException: passตัวอย่างที่พบบ่อยคือถ้าคุณต้องการที่จะไม่สนใจข้อยกเว้นบางอย่างที่คุณใช้ มีกรณีการใช้งานอื่น ๆ อีกมากมายเช่นกัน คุณไม่จำเป็นต้องใช้คำหลักอย่างเคร่งครัดเนื่องจากคุณสามารถใช้คำสั่งอื่นใดที่ไม่ได้ทำอะไรเลย (เช่น0เป็นคำสั่งที่ถูกต้องสมบูรณ์แบบที่ไม่มีผลกระทบ) แต่การมีคำหลักสำหรับเรื่องนี้ทำให้คุณสามารถ ชัดเจนมากขึ้นเกี่ยวกับการไม่ต้องการทำอะไร
                    pass?
                    ใช่มีความแตกต่าง continueบังคับให้ลูปเริ่มต้นที่การวนซ้ำครั้งถัดไปในขณะที่passหมายความว่า "ไม่มีรหัสที่จะดำเนินการที่นี่" และจะดำเนินการต่อผ่านส่วนที่เหลือหรือลูปบอดี้
เรียกใช้เหล่านี้และดูความแตกต่าง:
for element in some_list:
    if not element:
        pass
    print 1 # will print after pass
for element in some_list:
   if not element:
       continue
   print 1 # will not print after continuecontinueจะกระโดดกลับไปที่ด้านบนของลูป passจะดำเนินการต่อ
ถ้า pass อยู่ที่ท้ายของ loop ความแตกต่างนั้นเล็กน้อยเนื่องจาก flow จะกลับไปที่ด้านบนของ loop อย่างไรก็ตาม
ในตัวอย่างของคุณจะไม่มีความแตกต่างเนื่องจากทั้งสองข้อความปรากฏที่ท้ายลูป passเป็นเพียงตัวยึดตำแหน่งโดยที่มันไม่ทำอะไรเลย (มันผ่านการดำเนินการกับคำสั่งถัดไป) continueในทางกลับกันมีวัตถุประสงค์ที่ชัดเจน: มันบอกลูปเพื่อดำเนินการต่อราวกับว่าเพิ่งเพิ่งเริ่มต้นใหม่
for element in some_list:
    if not element:
        pass
    print element  แตกต่างจาก
for element in some_list:
    if not element:
        continue
    print elementมีความแตกต่างระหว่างพวกเขา   continueข้ามการทำซ้ำปัจจุบันของวงและดำเนินการทำซ้ำต่อไป passไม่ทำอะไรเลย มันเป็นตัวยึดคำสั่งที่ว่างเปล่า 
    ฉันอยากจะยกตัวอย่างให้คุณซึ่งจะอธิบายให้ดีกว่านี้
>>> for element in some_list:
...     if element == 1:
...         print "Pass executed"
...         pass
...     print element
... 
0
Pass executed
1
2
>>> for element in some_list:
...     if element == 1:
...         print "Continue executed"
...         continue
...     print element
... 
0
Continue executed
2ใช่มีความแตกต่าง Continueจริงข้ามส่วนที่เหลือของการวนซ้ำปัจจุบันของลูป (กลับไปที่จุดเริ่มต้น) Passเป็นข้อความว่างเปล่าที่ไม่ทำอะไรเลย
ในตัวอย่างเหล่านั้นไม่มี หากคำสั่งไม่ได้อยู่ในลูปสุดท้ายพวกเขาจะมีเอฟเฟกต์ที่แตกต่างกันมาก
ความแตกต่างระหว่าง pass และการวนรอบต่อไป:
เหตุใดจึงผ่านไปในงูหลาม
ถ้าคุณต้องการสร้างคลาสว่างวิธีการหรือบล็อก
ตัวอย่าง:
class MyException(Exception):
    pass
try:
   1/0
 except:
   passโดยไม่มี 'pass' ในตัวอย่างด้านบนจะทำให้ IndentationError
x = [1,2,3,4] 
for i in x:
    if i==2:
         pass  #Pass actually does nothing. It continues to execute statements below it.
         print "This statement is from pass."
for i in x:
    if i==2:
         continue #Continue gets back to top of the loop.And statements below continue are executed.
         print "This statement is from continue."ผลลัพธ์คือ
>>> This statement is from pass.อีกครั้งให้เรียกใช้รหัสเดียวกันกับการเปลี่ยนแปลงเล็กน้อย
x = [1,2,3,4]
for i in x:
    if i==2:
       pass  #Pass actually does nothing. It continues to execute statements below it.
    print "This statement is from pass."
for i in x:
    if i==2:
        continue #Continue gets back to top of the loop.And statements below continue are executed.
    print "This statement is from continue."ผลลัพธ์คือ -
>>> This statement is from pass.
This statement is from pass.
This statement is from pass.
This statement is from pass.
This statement is from continue.
This statement is from continue.
This statement is from continue.ผ่านไม่ได้ทำอะไรเลย การคำนวณไม่ได้รับผลกระทบ แต่กลับไปที่ด้านบนสุดของลูปเพื่อดำเนินการคำนวณต่อไป
พิจารณาด้วยวิธีนี้:
ผ่าน:หลามทำงานอย่างหมดจดในการเยื้อง! ไม่มีวงเล็บปีกกาว่างเปล่าซึ่งแตกต่างจากภาษาอื่น ๆ
ดังนั้นหากคุณต้องการทำอะไรในกรณีที่เงื่อนไขเป็นจริงไม่มีตัวเลือกอื่นนอกจากรหัสผ่าน
ดำเนินการต่อ:สิ่งนี้มีประโยชน์เฉพาะในกรณีของลูป ในกรณีสำหรับช่วงของค่าคุณไม่ต้องการดำเนินการคำสั่งที่เหลือของลูปหลังจากเงื่อนไขนั้นเป็นจริงสำหรับการส่งผ่านนั้นคุณจะต้องใช้ดำเนินการต่อ
passคำสั่ง if และดำเนินการถ้ามันเป็นTrue Falseทำให้สามารถสแกนรายการอเนกประสงค์ได้อย่างมีประสิทธิภาพ
                    passสามารถใช้ในสถานการณ์เมื่อคุณต้องการฟังก์ชั่นที่ว่างเปล่าบางคลาสหรือลูปสำหรับการใช้งานในอนาคตและไม่มีความต้องการของการดำเนินการรหัสใด ๆ 
continueจะใช้ในสถานการณ์เมื่อไม่มีเมื่อเงื่อนไขบางอย่างเกิดขึ้นภายในลูปและคุณต้องข้ามการวนซ้ำปัจจุบันและเลื่อนไปยังอันถัดไป
while True:; pass # Busy-wait for keyboard interrupt (Ctrl+C)ในเอกสารหลามทำให้ฉันสับสนในทางที่ฉันไม่พบว่ามันชัดเจนว่าสภาพอากาศที่มันทำงานได้เทียบเท่ากับการดำเนินการต่อในกรณีนี้หรือสิ่งอื่นที่ตั้งใจ ประโยคแรก"คำสั่ง pass ไม่ได้ทำอะไรเลย" อธิบายลักษณะทั้งหมดของคำตอบสำหรับคำถามของฉัน แต่อย่างใดมันก็ไม่ได้ตาของฉัน