วิธีสร้างเคล็ดลับและแยกเครื่องคิดเลขใน Python

มาเรียนรู้วิธีสร้างเครื่องคิดเลข Tip และ Split ใน Python

เป็นโครงการส่วนบุคคลที่ยอดเยี่ยมในการสร้างเพื่อฝึกฝนทักษะ Python ของคุณ นอกจากนี้ บทช่วยสอนนี้จะสอนวิธีสร้างแอปพลิเคชันในสองวิธี วิธีแรกเป็นเครื่องมือบรรทัดคำสั่ง และวิธีที่สองเป็นเครื่องมือ GUI

สารบัญ

ดูตัวอย่าง

เราจะสร้างแอปพลิเคชันในสองวิธี ขั้นแรก เราจะสร้างเชลล์สคริปต์ Python อย่างง่ายที่แจ้งให้ผู้ใช้ป้อนข้อมูลและเขียนผลลัพธ์

ประการที่สอง เราจะให้โปรแกรมมีส่วนติดต่อผู้ใช้แบบกราฟิกโดยใช้ Tkinter

ข้อกำหนดของโปรแกรม

โปรแกรมได้รับสามอินพุต:

  • จำนวนเงินที่เรียกเก็บ
  • เปอร์เซ็นต์การให้ทิป
  • จำนวนคนแชร์บิล

เมื่อใช้อินพุตเหล่านี้ โปรแกรมจะคำนวณเอาต์พุตต่อไปนี้:

  • สมทบทุนของแต่ละคน
  • แต่ละคนมีส่วนให้ทิป
  • รวมผลงานของแต่ละคน

อัลกอริทึม

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

  • รับอินพุต: จำนวนบิล, เปอร์เซ็นต์ทิป, จำนวนคน
  • คำนวณค่าทิปโดยการคูณจำนวนบิล * ค่าทิปเปอร์เซ็นต์ / 100
  • หารจำนวนบิลด้วย number_of_people เพื่อรับเงินบริจาคของแต่ละคน
  • หาร tip_amount ด้วย number_of_people เพื่อรับเงินส่วนทิปของแต่ละคน
  • สุดท้ายเพิ่มเงินสมทบในการเรียกเก็บเงินและทิปเพื่อรับจำนวนเงินทั้งหมดที่ต้องชำระ
  • ข้อกำหนดเบื้องต้น

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

    นอกจากนี้ คุณควรติดตั้ง Python ในระบบของคุณ ถ้าไม่ใช่ ให้ไปที่เว็บไซต์ Python แล้วดาวน์โหลด หรืออีกทางหนึ่ง admintrick.com มีคอมไพเลอร์ Python ออนไลน์ ซึ่งคุณสามารถรันโค้ด Python ของคุณในเบราว์เซอร์โดยไม่ต้องตั้งค่าสภาพแวดล้อมเลย

    สร้างเครื่องคิดเลขด้วยอินเทอร์เฟซบรรทัดคำสั่ง

    สร้างโฟลเดอร์โครงการ

    ในการเริ่มต้น ให้ไปที่โฟลเดอร์ว่างในระบบของคุณ ในกรณีของฉัน ฉันใช้ Ubuntu 22.04 ดังนั้นเพื่อสร้างโฟลเดอร์และนำทางไปยังโฟลเดอร์นั้นโดยใช้เทอร์มินัล ฉันต้องป้อนคำสั่งต่อไปนี้:

    mkdir tip-calculator && cd tip-calculator

    สร้างไฟล์ Python

    จากนั้นสร้างไฟล์สคริปต์ที่เราจะเขียนสคริปต์ Python ในกรณีของฉัน ฉันจะใช้คำสั่งสัมผัสเพื่อดำเนินการดังกล่าว:

    touch main.py

    เปิดไฟล์สคริปต์ด้วยโปรแกรมแก้ไขโค้ดที่คุณชื่นชอบ

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

    nano main.py

    รับอินพุต

    เมื่อเสร็จแล้ว เราสามารถเพิ่มบรรทัดโค้ดต่อไปนี้ที่ด้านบนของไฟล์:

    # Receiving input for bill amount as a floating point number
    bill_amount = float(input("Bill amount: ")) 
    
    # Receiving input for the tip percentage as a floating point number
    tip_percentage = float(input("Tip percentage: "))
    
    # Receiving the input for the number of people as an integer
    number_of_people = int(input("Number of people: "))

    โดยพื้นฐานแล้ว สิ่งนี้จะรับอินพุตและแปลงประเภทข้อมูลของแต่ละอินพุตจากสตริงเป็นประเภทที่เหมาะสมที่สุด

      เหตุใดคุณจึงไม่ควรใช้การ์ด MicroSD ในกล้อง DSLR หรือกล้องมิเรอร์เลส

    คำนวณจำนวนทิป

    ต่อไป เราจะคำนวณจำนวนทิปโดยการคูณเปอร์เซ็นต์ทิปด้วยจำนวนเงินที่เรียกเก็บ

    tip_amount = bill_amount * tip_percentage / 100

    แบ่งบิลและทิปเพื่อรับเงินบริจาคของแต่ละคน

    # Calculating each person's bill contribution
    bill_contribution = bill_amount / number_of_people
    
    # Calculating each person's tip contribution
    tip_contribution = tip_amount / number_of_people

    คำนวณผลงานทั้งหมด

    ถัดไป เพิ่มผลงานแต่ละรายการเพื่อกำหนดผลงานทั้งหมดต่อคน

    total_contribution = bill_contribution + tip_contribution

    แสดงผล

    สุดท้าย ส่งออกผลลัพธ์ไปยังผู้ใช้

    # Displayinnng the results
    print("Bill contribution per person: ", bill_contribution)
    print("Tip contribution per person: ", tip_contribution)
    print("Total contribution per person: ", total_contribution)

    การทดสอบเคล็ดลับและเครื่องคิดเลขแยก

    สุดท้าย ไฟล์สคริปต์ของคุณควรมีลักษณะดังนี้:

    # Receiving input for bill amount as a floating point number
    bill_amount = float(input("Bill amount: ")) 
    
    # Receiving input for the tip percentage as a floating point number
    tip_percentage = float(input("Tip percentage: "))
    
    # Receiving the input for the number of people as an integer
    number_of_people = int(input("Number of people: "))
    
    tip_amount = bill_amount * tip_percentage / 100
    
    # Calculating each person's bill contribution
    bill_contribution = bill_amount / number_of_people
    
    # Calculating each person's tip contribution
    tip_contribution = tip_amount / number_of_people
    
    total_contribution = bill_contribution + tip_contribution
    
    # Displaying the results
    print("Bill contribution per person: ", bill_contribution)
    print("Tip contribution per person: ", tip_contribution)
    print("Total contribution per person: ", total_contribution)

    ณ จุดนี้ อย่าลังเลที่จะทดสอบรันแอปพลิเคชันของคุณโดยใช้คำสั่งต่อไปนี้:

    python3 main.py

    สร้างเคล็ดลับและเครื่องคิดเลขแยกด้วย GUI

    ในส่วนถัดไปของบทช่วยสอนนี้ เราจะใช้แอปพลิเคชันเดียวกันแต่มีส่วนติดต่อผู้ใช้แบบกราฟิก ในการสร้าง GUI เราจะใช้แพ็คเกจที่เรียกว่า Tkinter

    การตั้งค่า

    Tkinter เป็นแพ็คเกจที่สร้างขึ้นใน Standard Library ของ Python ซึ่งหมายความว่ามีการติดตั้งตามค่าเริ่มต้นเมื่อคุณติดตั้ง Python

      ตัวควบคุมอุณหภูมิอัจฉริยะสามารถทำลายเตาเผาของคุณได้หรือไม่?

    อย่างไรก็ตาม บนเครื่อง Linux ที่ติดตั้ง Python เป็นค่าเริ่มต้น TKinter จะไม่ได้รับการติดตั้งไว้ล่วงหน้าเพื่อประหยัดพื้นที่ ดังนั้นคุณต้องติดตั้งด้วยตนเองโดยใช้คำสั่งต่อไปนี้:

    sudo apt-get install python3-tk

    สร้างไฟล์โครงการ

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

    touch gui.py

    นำเข้า Tkinter

    ถัดไป นำเข้าแพ็คเกจ Tkinter โดยเพิ่มบรรทัดต่อไปนี้ที่ด้านบนของไฟล์

    import tkinter from tk

    สร้างส่วนติดต่อผู้ใช้

    จากนั้น เราสามารถเริ่มสร้างส่วนติดต่อผู้ใช้

    # Creating the window
    window = tk.Tk()
    
    # Creating the Window title
    tk.Label(text="Tip and Split Calculator").pack()
    
    # Create an input field
    tk.Label(text="Enter bill amount").pack()
    ent_bill = tk.Entry(width=40)
    ent_bill.pack()
    
    # Create and entry for the tip percentage
    tk.Label(text="Enter tip percentage").pack()
    ent_tip = tk.Entry(width=40)
    ent_tip.pack()
    
    # Create an entry for the number of people
    tk.Label(text="Enter the number of people").pack()
    ent_people = tk.Entry(width=40)
    ent_people.pack()
    
    # Create the Enter button
    btn_enter = tk.Button(text="Enter")

    โค้ดด้านบนสร้างหน้าต่างที่มีวิดเจ็ต User Interface ทั้งหมด นอกจากนี้ยังสร้างป้ายกำกับที่จะใช้เป็นชื่อเรื่องของหน้าต่าง

    ถัดไป สร้างป้ายกำกับและฟิลด์ป้อนข้อมูลสำหรับอินพุตสามรายการ: บิล_amount, tip_percentage และ number_of_people สุดท้าย มันสร้างปุ่มที่ผู้ใช้จะคลิกเพื่อเรียกใช้การคำนวณ

    สร้างฟังก์ชันเพื่อคำนวณผลลัพธ์

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

    def handle_click(event):
        # Collecting the inputs from the entry fields using the get method
        # Also type casting the inputs from the default string data type
        bill_amount = float(ent_bill.get())
        tip_percentage = float(ent_tip.get())
        number_of_people = int(ent_people.get())
        
        # Calcuating the amount to be paid as a tip
        tip_amount = bill_amount * tip_percentage / 100
        
        # Calculating the bill contribution of each person at the table
        bill_contribution = bill_amount / number_of_people 
    
        # Calculating the tip contribution of each person at the table
        tip_contribution = tip_amount / number_of_people
    
        # Calculating the total contribution of each person
        total_contribution = bill_contribution + tip_contribution
    
        # Creating the output string
        output = f'Bill per person: {bill_contribution} n Tip per person: {tip_contribution} n Total per person: {total_contribution}'
        
        # Creating a label for the output text
        tk.Label(text=output).pack()
    
        # Updating the window to reflect the UI changes
        window.update()

    โค้ดในฟังก์ชันด้านบนได้รับการอธิบายผ่านความคิดเห็นที่อธิบายแต่ละขั้นตอนหลัก

      วิธีส่งอีเมลที่ไม่ระบุชื่อฟรี

    การแนบตัวจัดการเหตุการณ์เข้ากับปุ่ม

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

    btn_enter.bind('<Button-1>', handle_click)
    btn_enter.pack()

    สุดท้าย เพื่อให้หน้าต่างทำงาน เราเรียกเมธอด mainloop ของวัตถุหน้าต่าง

    window.mainloop()

    และเสร็จแล้ว!

    การทดสอบเคล็ดลับและเครื่องคิดเลขแยก

    คุณสามารถเรียกใช้แอปพลิเคชันโดยใช้คำสั่งต่อไปนี้:

    python3 gui.py

    ควรเปิดหน้าต่างดังนี้:

    คุณสามารถเรียกใช้เครื่องคิดเลขด้วยอินพุตตัวอย่าง:

    คำสุดท้าย

    ในบทช่วยสอนนี้ เราสร้างทิปและเครื่องคิดเลขแบบแยกออกเป็นสองวิธี ครั้งแรกใช้เครื่องมือ CLI ที่ใช้เทอร์มินัล ประการที่สองคือเครื่องมือ GUI โดยใช้ Tkinter ของ Python บทช่วยสอนนี้แสดงวิธีสร้างโปรเจ็กต์ Python อย่างง่าย หากคุณต้องการปัดฝุ่นหรือขัดเกลาทักษะ Python ของคุณ นี่คือหลักสูตร Datacamp

    ต่อไป คุณสามารถดูวิธีสร้างตัวสร้างรหัสผ่านแบบสุ่มใน Python

    เรื่องล่าสุด

    x