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

Python - ค้นหาเวลาที่ถูกต้องล่าสุดที่สามารถรับได้โดยการแทนที่ตัวเลขที่ไม่รู้จัก/ซ่อน


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

ตัวอย่าง

ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน

def find_latest_time(my_time):
   my_time = list(my_time)
   for i in range(len(my_time)):
      if my_time[i] == "?":
         if i == 0: my_time[i] = "2" if my_time[i+1] in "?0123" else "1"
         elif i == 1: my_time[i] = "3" if my_time[0] == "2" else "9"
         elif i == 3: my_time[i] = "5"
         else: my_time[i] = "9"
   print("".join(my_time))

my_str = '0?:?3'
print("The time is :")
print(my_str)
print("The latest valid time is : ")
find_latest_time(my_str)

ผลลัพธ์

The time is :
0?:?3
The latest valid time is :
09:53

คำอธิบาย

  • มีการกำหนดเมธอดชื่อ 'find_latest_time' ซึ่งใช้เวลาเป็นพารามิเตอร์

  • มันถูกแปลงเป็นรายการ

  • มีการวนซ้ำและตรวจสอบเพื่อดูค่าเวลาที่ซ่อน/ไม่รู้จัก

  • หากค่าของตัววนซ้ำเป็น 0 หรือ 1 หรือ 3 ค่านั้นจะถูกแทนที่ด้วยค่าเฉพาะ

  • นอกเมธอด มีการกำหนดสตริงและแสดงบนคอนโซล

  • วิธีการนี้เรียกโดยการส่งผ่านค่านี้

  • เอาต์พุตจะแสดงบนคอนโซล