ตามปกติเป็นค่าคงที่ในตัวของTrue
Python ในตัวของประเภทบูล
คุณสามารถใช้การดำเนินการบูลีนกับประเภทบูล (ที่พรอมต์ python แบบโต้ตอบเป็นต้น) และแปลงตัวเลขเป็นประเภทบูล:
>>> print not True
False
>>> print not False
True
>>> print True or False
True
>>> print True and False
False
>>> a=bool(9)
>>> print a
True
>>> b=bool(0)
>>> print b
False
>>> b=bool(0.000000000000000000000000000000000001)
>>> print b
True
และมี "gotcha" ที่อาจเกิดขึ้นกับสิ่งที่คุณเห็นและสิ่งที่คอมไพเลอร์ Python เห็น:
>>> n=0
>>> print bool(n)
False
>>> n='0'
>>> print bool(n)
True
>>> n=0.0
>>> print bool(n)
False
>>> n="0.0"
>>> print bool(n)
True
เพื่อเป็นการบอกใบ้ถึงวิธีที่ Python จัดเก็บประเภทบูลไว้ภายในคุณสามารถโยนประเภทบูลเป็นจำนวนเต็มและ True จะออกมาเป็น 1 และ False 0:
>>> print True+0
1
>>> print True+1
2
>>> print False+0
0
>>> print False+1
1
ในความเป็นจริงbool
ประเภทPython เป็นคลาสย่อยของประเภทของ Python int
:
>>> type(True)
<type 'bool'>
>>> isinstance(True, int)
True
ส่วนที่สำคัญกว่าของคำถามของคุณคือ "What is while True
?" คือ 'อะไรคือความจริง' และข้อสรุปที่สำคัญ: อะไรคือเท็จ?
ขั้นแรกสำหรับทุกภาษาที่คุณกำลังเรียนรู้ให้เรียนรู้สิ่งที่ภาษาถือว่า 'จริง' และ 'เท็จ' Python พิจารณาความจริงแตกต่างจากPerl Truthเล็กน้อย ภาษาอื่น ๆ มีแนวคิดเรื่องจริง / เท็จที่แตกต่างกันเล็กน้อย รู้ว่าภาษาของคุณถือว่าเป็นจริงและเท็จสำหรับการดำเนินการและการควบคุมการไหลที่แตกต่างกันเพื่อหลีกเลี่ยงความปวดหัวในภายหลัง!
มีอัลกอริทึมมากมายที่คุณต้องการประมวลผลบางอย่างจนกว่าคุณจะพบสิ่งที่คุณกำลังมองหา ดังนั้นลูปไม่มีที่สิ้นสุดหรือลูปไม่ จำกัด แต่ละภาษามักจะมีสำนวนของตัวเองสำหรับโครงสร้างเหล่านี้ ต่อไปนี้เป็นลูปแบบไม่มีที่สิ้นสุดของ C ทั่วไปซึ่งใช้ได้กับ Perl:
for(;;) { /* loop until break */ }
/* or */
while (1) {
return if (function(arg) > 3);
}
while True:
รูปแบบเป็นเรื่องธรรมดาในงูหลามลูปไม่แน่นอนด้วยวิธีการของการทำลายออกจากวงบาง เรียนรู้การควบคุมโฟลว์ Python เพื่อทำความเข้าใจว่าคุณแยกออกจากwhile True
ลูปอย่างไร ต่างจากภาษาส่วนใหญ่เช่น Python สามารถมีelse
ประโยคบนลูปได้ มีตัวอย่างในลิงค์สุดท้าย