จากบางสิ่งเช่นนี้
print(get_indentation_level())
print(get_indentation_level())
print(get_indentation_level())
ฉันต้องการได้รับสิ่งนี้:
1
2
3
รหัสสามารถอ่านตัวเองด้วยวิธีนี้
สิ่งที่ฉันต้องการคือผลลัพธ์จากส่วนที่ซ้อนกันมากขึ้นของรหัสที่จะซ้อนกันมากขึ้น ในทำนองเดียวกับที่ทำให้โค้ดอ่านง่ายขึ้นก็จะทำให้อ่านง่ายขึ้น
แน่นอนฉันจะดำเนินการนี้ด้วยตนเองโดยใช้เช่น.format()
แต่สิ่งที่ฉันมีในใจเป็นฟังก์ชั่นการพิมพ์ที่กำหนดเองซึ่งจะprint(i*' ' + string)
ที่i
เป็นระดับเยื้อง นี่จะเป็นวิธีที่รวดเร็วในการสร้างเอาต์พุตที่อ่านได้บนเทอร์มินัลของฉัน
มีวิธีที่ดีกว่าในการทำเช่นนี้ซึ่งหลีกเลี่ยงการจัดรูปแบบด้วยตนเองอย่างระมัดระวัง?
get_indentation_level()
ลงในรหัสของคุณ คุณสามารถทำprint(3)
อะไรก็ได้โดยตรง สิ่งที่น่าสนใจมากกว่าคือระดับปัจจุบันของการซ้อนบนสแตกการเรียกใช้ฟังก์ชัน
depth
พารามิเตอร์อย่างชัดเจนและเพิ่มมูลค่าที่เหมาะสมตามความจำเป็นเมื่อคุณส่งไปยังฟังก์ชันอื่น การซ้อนโค้ดของคุณไม่น่าจะสอดคล้องกับการเยื้องที่คุณต้องการจากเอาต์พุตของคุณ