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

นับคำนำหน้าทั้งหมดในสตริงที่กำหนดด้วยความถี่สูงสุดโดยใช้ Python


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

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

มาดูตัวอย่างกัน

อินพุต

string:- apple
alphabets:- p, e

ผลลัพธ์

ap
app
appl
apple 4

อินพุต

string:- apple
alphabets:- e, p

ผลลัพธ์

0

มาดูขั้นตอนในการเขียนโค้ดกันครับ

  • กำหนดฟังก์ชันและเขียนโค้ดลงไป

  • เริ่มต้นนับถึง 0 และสตริงว่าง

  • วนซ้ำบนสตริง

  • รับคำนำหน้าโดยใช้การแบ่งสตริงและดัชนี และเก็บไว้ในสตริงว่าง

  • เปรียบเทียบความถี่ตัวอักษรในคำนำหน้า

  • พิมพ์และเพิ่มจำนวนหากพอใจ

  • พิมพ์การนับในตอนท้าย

ตัวอย่าง

# defining a function for multiple calles
def prefixes(string, _1, _2):
   # count count = 0
   # empty string for comparison
   prefix = ""
   # iterating over the string
   for i in range(len(string)):
      # getting the prefix from the string
      prefix = string[:i + 1]
      # comparing the count of alphabets in the prefix
      if prefix.count(_1) > prefix.count(_2):
      # printing the prefix if success
      print(prefix)
      # incrementing the count by 1
      count += 1
   # printing the count
   print(f"Total prefixes matched: {count}")
if __name__ == '__main__':
   # invokging the function
   print(f"----------------apple p e---------------------")
   prefixes('apple', 'p', 'e')
   print()
   print(f"----------------apple e p---------------------")
   prefixes('apple', 'e', 'p')

ผลลัพธ์

หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้

----------------apple p e---------------------
ap
app
appl
apple
Total prefixes matched: 4
----------------apple e p---------------------
Total prefixes matched: 0

บทสรุป

หากคุณกำลังประสบปัญหาใดๆ ในการทำความเข้าใจโค้ด ให้พูดถึงในส่วนความคิดเห็น