Hướng dẫn how to make python into an app - cách biến python thành ứng dụng

Có một sự chuyển đổi gần đây thành sự phát triển của các ngôn ngữ và khung đa nền tảng. Đây là nơi một thư viện được sử dụng để phát triển các ứng dụng có thể chạy trên Windows, MacOS, Android và Linux.

Xu hướng này ngăn cản các lập trình viên phải viết lại cùng một mã cho một nền tảng khác. Vì vậy, ví dụ, một nhà phát triển Android có thể viết một cơ sở mã có thể chạy hiệu quả trên các thiết bị khác nhau.

Kivy Python đi theo cùng một con đường, cho phép các nhà phát triển phát triển các ứng dụng đa nền tảng cho một số hệ điều hành và thiết bị. Do đó, các ứng dụng được phát triển bằng thư viện này một tương tự trên tất cả các nền tảng mà chúng chạy.

Một lợi thế của Kivy là cung cấp giao diện người dùng đồ họa mà nhà phát triển tương tác khi anh ta phát triển ứng dụng.

Trong hướng dẫn này, người đọc sẽ học cách thiết lập Kivy để phát triển và tạo một ứng dụng cơ bản bằng cách sử dụng cùng một thư viện. Sau đó, chúng tôi sẽ xây dựng một ứng dụng giao diện người dùng đồ họa cho người dùng thực hiện các tính toán độ tuổi cơ bản nhanh chóng.

Việc phát triển dự án này sẽ cho phép người đọc hiểu lập trình cấp nhập cảnh với thư viện Kivy, tạo giao diện người dùng đồ họa bằng các thành phần như hình ảnh, văn bản, nút và nhãn.

Hướng dẫn này cũng sẽ dạy cho người dùng cách tương tác với các thành phần bố cục khác nhau.

Điều kiện tiên quyết

Người đọc nên có một sự hiểu biết tốt về những điều sau đây để theo dõi cùng với hướng dẫn này.

  • Ngôn ngữ lập trình Python
  • Đối tượng và lớp học trong Python

Thiết lập dự án

Sẽ là tốt nhất nếu bạn đã cài đặt thư viện Kivy trong hệ thống của bạn để bắt đầu. Sử dụng lệnh bên dưới để cài đặt kivy trên máy của bạn.

Nhập thư viện

Tạo một thư mục và gọi nó là calculator app. Tên này là tên ứng dụng. Trong thư mục được tạo, tạo một tệp mới, gọi nó là main.py và thêm đoạn trích bên dưới.

from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.uix.label import Label
from kivy.uix.image import Image
from kivy.uix.button import Button
from kivy.uix.text input import TextInput

Mã hóa các tiện ích ứng dụng

Đoạn trích trên nhập các tiện ích thành phần mà chúng tôi yêu cầu để xây dựng ____1010Application.

Tiếp theo, tạo một đối tượng cửa sổ cho ứng dụng bằng cách khởi tạo một lớp gọi là

class AgeCalculator(App):
    def build(self):
        self.window = GridLayout()
    return self.window
1. Kivy Python dựa trên các lớp và đối tượng, vì vậy nếu người đọc không được trang bị tốt với kiến ​​thức về các lớp Python, họ có thể xem xét điều đó trước hướng dẫn.

class AgeCalculator(App):
    def build(self):
        self.window = GridLayout()
    return self.window

Cuối cùng, chúng tôi chỉ định chức năng chạy ngay khi chương trình thực thi tệp.

if __name__ == "__main__":
 AgeCalculator().run()

Chúng tôi cần tạo kiểu ứng dụng của mình cho một giao diện người dùng và tương tác ban đầu hơn. Chẳng hạn, chúng tôi sẽ bắt đầu bằng cách đặt số lượng cột mà bố cục lưới lấy. Sau đó, chúng tôi sẽ thực hiện các ứng dụng kiểu dáng tiếp theo sau khi chúng tôi đã thực hiện đầy đủ chức năng.

Chúng tôi sẽ đặt logo cho ứng dụng của chúng tôi bằng đoạn trích bên dưới. Một lần nữa, lưu logo ứng dụng trong cùng thư mục với tệp main.py, do đó ứng dụng sẽ dễ dàng tìm thấy nó.

self.window.add_widget(Image(source("logo_image.png")))

Vì ứng dụng này nhằm mục đích tìm thấy độ tuổi của người dùng khi họ cung cấp ngày sinh, chúng tôi cần cung cấp một đầu vào trong đó họ chèn ngày sinh và cho nó một nhãn cho biết nhập ngày sinh của bạn.

self.ageRequest = Label(text = "Enter your year of birth...")
self.window.add_widget(self.ageRequest)

self.date = TextInput(multiline=False)
self.window.add_widget(self.date)

Thu thập đầu vào của người dùng

Hãy để chúng tôi thiết lập một ứng dụng để kết nối đầu vào của người dùng, đó là ngày sinh.

Liên kết với tính toán hàm tuổi với nút

Chúng ta cần liên kết chức năng gọi lại tính toán tuổi với nút sao cho nút

class AgeCalculator(App):
    def build(self):
        self.window = GridLayout()
    return self.window
3 được nhấp, hàm
class AgeCalculator(App):
    def build(self):
        self.window = GridLayout()
    return self.window
4 được gọi để tính độ tuổi từ năm đầu vào.

self.button = Button(text = "Calculate Age")
self.button.bind(on_press = self.getAge)
self.window.add_widget(self.button)

Tính chức năng tuổi

Chức năng này lấy năm đầu vào của sinh và trừ nó từ năm hiện tại. Chúng tôi sử dụng mô -đun Python

class AgeCalculator(App):
    def build(self):
        self.window = GridLayout()
    return self.window
5 và trích xuất phần năm từ nó.

Ngoài ra, chúng tôi chuyển đổi năm đầu vào của người dùng từ một chuỗi thành số nguyên để tính toán kiểu dữ liệu thống nhất. Cuối cùng, chúng tôi chuyển đổi kết quả thành một chuỗi và hiển thị nó cho người dùng.

def getAge(self, event):
    today = datetime.today().year 
    dob = self.date.text
    age = int(today) - int(dob) 
    self.ageRequest.text = "You are " + str(int(age)) + " years old"

Tạo kiểu cho ứng dụng UI UI.

Để tạo kiểu cho ứng dụng của chúng tôi một cách chính xác, chúng tôi có thể bắt đầu bằng cách thêm tỷ suất lợi nhuận vào các mặt và dưới cùng của ứng dụng. Biên độ là không gian xung quanh một thành phần nhất định trong ứng dụng.

Đối với trường hợp của chúng tôi, lề sẽ là không gian xung quanh bố cục container. Sau đó, chúng tôi chơi xung quanh với tất cả các thành phần khác của ứng dụng bằng đoạn trích bên dưới.

Một ưu điểm khác của mô -đun là ứng dụng phát triển tự động phản hồi kích thước màn hình và đưa ra một phác thảo rõ ràng về kích thước màn hình chủ thể.

def build(self):
    self.window = GridLayout()
    self.window.cols = 1
    self.window.size_hint = (0.6, 0.7)
    self.window.pos_hint = {"center_x": 0.5, "center_y": 0.5 }
    self.window.add_widget(Image(source("logo_image.png")))


    self.ageRequest = Label(
        text = "Enter your date of birth...", 
        font_size = 50,
        color = "#ffffff",
        bold = True
    )
    self.window.add_widget(self.ageRequest)
    
    self.date = TextInput(
        multiline=False,
        padding_y = (30, 30),
        size_hint = (1, 0.7),
        font_size = 30
    )
    self.window.add_widget(self.date)

    self.button = Button(
        text = "Calculate Age",
        size_hint = (0.5, 0.5),
        bold = True,
        font_size = 30
    )
    self.button.bind(on_press = self.getAge)
    self.window.add_widget(self.button)

    return self.window

Chạy ứng dụng

Để ứng dụng chạy, hãy mở thiết bị đầu cuối, sau đó điều hướng đến thư mục dự án. Tiếp theo, chạy lệnh dưới đây trong thư mục dự án.

Hướng dẫn how to make python into an app - cách biến python thành ứng dụng

Sự kết luận

Trong bài viết này, người đọc đã học quá trình tạo ứng dụng di động bằng thư viện Kivy Python. Chúng tôi đã phát triển một ứng dụng máy tính tuổi bằng cách sử dụng mô-đun Python đa nền tảng và kiểm tra chức năng ứng dụng của chúng tôi.

Chúng tôi nhận ra làm thế nào mọi thành phần phát triển bằng cách sử dụng Kivy dựa trên việc hiểu các lớp và đối tượng Python.

Mã hóa hạnh phúc!


Đóng góp đánh giá ngang hàng của: Mercy Meave

Tôi có thể tạo một ứng dụng bằng Python không?

Python không có khả năng phát triển di động tích hợp, nhưng có các gói bạn có thể sử dụng để tạo các ứng dụng di động, như Kivy, PyQT hoặc thậm chí là thư viện TOGA của Beeware.Những thư viện này đều là những người chơi chính trong không gian di động Python.there are packages you can use to create mobile applications, like Kivy, PyQt, or even Beeware's Toga library. These libraries are all major players in the Python mobile space.

Bạn có thể chuyển đổi PY thành APK không?

Bạn có thể chuyển đổi mã Python của mình thành APK Android..

Python có thể được biên dịch cho exe không?

Tạo một tệp thực thi với Auto-py-to-exe Tùy chọn đầu tiên cung cấp GUI đẹp (giao diện người dùng đồ họa) chăm sóc tất cả các thứ cần thiết để chuyển đổi tập lệnh Python của bạn thành tệp thực thi. The first option offers a nice GUI (graphical user interface) that takes care of all the stuff necessary to convert your Python script into an executable file.