Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ตรวจสอบว่ารายการเพิ่มขึ้นอย่างเข้มงวดใน Python . หรือไม่


จากรายชื่อ เราอาจต้องตรวจสอบลำดับขององค์ประกอบ ในบทความนี้ เราจะมาดูกันว่าองค์ประกอบที่มีอยู่ในรายการนั้นอยู่ในลำดับที่เพิ่มขึ้นอย่างเคร่งครัดหรือไม่ โปรแกรมด้านล่างบรรลุวัตถุประสงค์นั้น

พร้อมทุกอย่างและซิป

ในแนวทางนี้ ก่อนอื่น เราจะแบ่งแต่ละองค์ประกอบเปรียบเทียบค่ากับองค์ประกอบถัดไปที่แยกส่วน หากการเปรียบเทียบดังกล่าวเป็นความจริง เราจะสรุปว่ารายการมีลำดับเพิ่มขึ้นอย่างเคร่งครัด

ตัวอย่าง

listA =[11,23,42,51,67]#Given listprint("Given list :",listA)# Apply all และ rangeif (ทั้งหมด(i  

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

รายการที่ให้:[11, 23, 42, 51, 67]ใช่ รายการถูกจัดเรียง รายการที่ได้รับ:[11, 23, 21, 51, 67]ไม่ รายการไม่ได้รับการจัดเรียง

ด้วย itertools.starmap

ทำให้ตัววนซ้ำที่คำนวณฟังก์ชันโดยใช้อาร์กิวเมนต์ที่ได้รับจาก iterable เราซิปรายการองค์ประกอบหลังจากแยกมันทีละรายการแล้วผ่านโอเปอเรเตอร์ที่น้อยกว่า โปรดทราบว่าเราใช้สตริงแทนตัวเลขในตัวอย่างด้านล่าง

ตัวอย่าง

import operatorimport itertoolslistA =['Mon','Tue','Sun']#Given listprint("Given list :",listA)# Apply all และ rangeif all(itertools.starmap(operator.le, zip(listA)) , listA[1:]))):print("Yes, List is sorted.")else:print("No, List is not sorted")# กำลังตรวจสอบอีกครั้งlistB =['Mon','Sun','Tue ']print("รายการที่กำหนด:",listB)# ใช้ทั้งหมดและ rangeif all(itertools.starmap(operator.le, zip(listB, listB[1:]))):print("ใช่ รายการถูกจัดเรียง" )else:print("ไม่ รายการไม่ได้รับการจัดเรียง")

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

รายการที่ให้ :['จันทร์' 'อังคาร' 'อาทิตย์']ไม่ ไม่ได้เรียงลำดับรายการ รายการที่ให้:['จันทร์' 'อาทิตย์' 'อังคาร']ใช่ เรียงลำดับรายการแล้ว