Tối ưu hóa hiệu suất là một nhu cầu cơ bản để phát triển phần mềm. Khi nói đến việc tối ưu hóa hiệu suất của ứng dụng, theo dõi tần suất, duy trì sản xuất hoặc duy trì lệnh gọi phương thức, trình lập hồ sơ đóng một vai trò quan trọng. Tìm hiểu lý do tại sao Python cProfile là giao diện định hình được đề xuất và cách giao diện này nâng cao hiệu suất phần mềm của bạn Show
Python cProfile. Tối ưu hóa các yêu cầu phát triển phần mềmBáo cáo của Statista cho thấy Java và Python xếp hạng trong số năm ngôn ngữ lập trình được sử dụng rộng rãi nhất. Khi nói đến việc phát triển một ứng dụng bằng Python, các nhà phát triển cần tập trung vào giao diện định hình để cải thiện hiệu suất của dự án Một cách để cải thiện hiệu suất của ứng dụng Python là thông qua cProfile. CProfile là gì?cProfile là một thư viện nâng cao theo dõi các hàm để tạo danh sách các hàm thường được gọi nhất. cProfile có lợi cho sự phát triển vì. 1. Cung cấp một thư viện tiêu chuẩn; 2. Theo dõi hành vi cuộc gọi thống kê khác nhau; 3. Nhà phát triển có thể sử dụng cProfile mà không bị hạn chế Ví dụ chương trình cProfile đơn giảntừ điểm chuẩn nhập simul nhập cProfile pr = cHồ sơ. Hồ sơ() pr. cho phép() điểm chuẩn() pr. vô hiệu hóa() pr. print_stats() Mã số. (Nguồn) Khi bạn sử dụng cProfile, bạn sẽ xuất thành năm cột khác nhau, bao gồm
Chương trình ngắn giải thích việc sử dụng các cột khác nhau trong Python cProfilegiai thừa xác định (n) nếu n == 0 trả lại 1. 0 khác trả về n * giai thừa(n-1) def taylor_exp(n) trở lại [1. 0/giai thừa(i) cho tôi trong phạm vi(n)] def taylor_sin(n) độ phân giải = [] cho tôi trong phạm vi (n) nếu tôi% 2 == 1 độ phân giải. nối thêm((-1)**((i-1)/2)/float(giai thừa(i))) khác độ phân giải. nối thêm (0. 0) trả lại độ phân giải điểm chuẩn xác định () taylor_exp(500) taylor_sin(500) nếu __name__ == ‘__main__’ điểm chuẩn() Mã số. (Nguồn) Lập hồ sơ với Python cProfile. Mọi thứ bạn cần biết đều ở ngay đâyLập hồ sơ mã cho phép bạn nhanh chóng tìm ra các nút thắt cổ chai trong mã của mình. Hồ sơ giúp bạn tìm mã nào mất nhiều thời gian nhất. Trình biên dịch mã cho phép bạn xem nhanh các đoạn mã để tối ưu hóa hiệu suất phần mềm. Giao diện hồ sơ của cProfile giúp phát triển dễ dàng hơn. 0 Python cProfile là một tập hợp các số cho biết thời lượng và tần suất các phần chương trình được gọi và chạy. Bạn có thể dễ dàng định dạng báo cáo dưới dạng mô-đun pstats. Mã hóa bằng cProfile tương đối dễ dàng. Bạn chỉ cần nhập đúng chức năng và mô-đun để gọi chức năng chạy. Kiểm tra ví dụ cProfile đơn giản ngay tại đây>>> nhập hashlib >>> nhập cProfile >>> cProfile. chạy(“hashlib. md5('abcdefghijkl'). tiêu()") 4 lệnh gọi hàm trong 0. 000 CPU thứ hai Đặt hàng bởi. tên chuẩn ncalls tottime cumtime percall filename. dòng (chức năng) 1 0.000 0.000 0.000 0.000 1 0. 000 0. 000 0. 000 0. 000 {_hashlib. openssl_md5} 1 0. 000 0. 000 0. 000 0. 000 {phương thức 'tiêu hóa' của '_hashlib. đối tượng HASH} 1 0. 000 0. 000 0. 000 0. 000 {phương thức 'vô hiệu hóa' của '_lsprof. đối tượng hồ sơ} Mã số. (Nguồn) Nhập cProfile. Tìm hiểu đúng cách để sử dụng nóNgười dùng cũng có thể sử dụng các công cụ hồ sơ mã miễn phí như Stackify Prefix. Tiền tố giúp tăng tốc mã hóa và xử lý các sự cố không mong muốn như ngoại lệ ẩn, v.v. Tiền tố đặt sức mạnh của APM vào tay các nhà phát triển. Bằng cách xác thực hiệu suất của mã khi nó được viết, người dùng Tiền tố thúc đẩy mã tốt hơn để thử nghiệm, nhận được ít phiếu hỗ trợ hơn từ quá trình sản xuất và có các nhà quản lý nhà phát triển hạnh phúc hơn. Tiền tố cung cấp hỗ trợ tuyệt vời cho Python, cũng như. NET, Java, PHP, Node JS và Ruby trên Windows và MacOS. Tải xuống tiền tố MIỄN PHÍ Với cProfile, nhà phát triển có thể sử dụng tiện ích mở rộng C cho các chương trình chạy dài. Tiện ích mở rộng C là một mô-đun python tích hợp để định hình. Đó là một trình lược tả Python thường được sử dụng
Mã được sử dụng để nhập gói cProfile# mô-đun nhập khẩu nhập cProfile Mã số. (Nguồn) Cách sử dụng cơ bản của cProfileCách lập hồ sơ hiệu quả nhất với cProfile là sử dụng hàm run(). Bạn có thể chuyển một câu lệnh chuỗi để chạy(). Kiểm tra mã dưới đây để biết làm thế nào bạn có thể làm như vậy >>> x = [] >>> nội trang loại (x). danh sách >>> x=[1,2,3,4] >>> x[1,2,3,4,5] # Danh sách 2 chiều (danh sách của danh sách) >>> x = [[1,2,3,4,5], [5,6,7,8]] >>> x[[1, 2, 3, 4], [5, 6, 7, 8,9]] # Danh sách răng cưa, không phải hình chữ nhật >>> x = [[1,2,3,4, 5] , [5,6,7]] >>> x[[1, 2, 3, 4], [5, 6, 7,8]] # Kiểu dữ liệu hỗn hợp >>> x = [1,1. 0,1+0,'một',Không,Đúng] >>> x[1, 1. 0, (1+0),'một', Không có, Đúng] Mã số. (Nguồn) Chức năng hồ sơ của cProfile giúp gọi các chức năng khácBạn thậm chí có thể gọi các chức năng khác bằng cách sử dụng hồ sơ. Truyền một quy trình chính () cho cProfile. hàm run() dưới dạng chuỗi. Kiểm tra ví dụ dưới đây để hiểu rõ hơn từ nhập mảng * # Khai báo một mảng gồm 10 số float num_array = mảng('f', phạm vi(0, 10)) # In mảng trước khi xóa phần tử print(“num_array trước khi xóa. {}”. định dạng (num_array)) # Xóa phần tử đầu tiên của mảng xóa num_array[0] print(“num_array sau khi xóa phần tử đầu tiên. {}”. định dạng (num_array)) # Xóa phần tử cuối cùng del num_array[len(num_array)-1] print(“num_array sau khi xóa phần tử cuối cùng. {}”. định dạng (num_array)) # Xóa toàn bộ mảng trong một lần xóa số_mảng # In một mảng đã xóa sẽ làm tăng NameError print(“num_array sau khi xóa phần tử đầu tiên. {}”. định dạng (num_array)) Mã số. (Nguồn) Lớp hồ sơ của cProfile. Làm thế nào để sử dụng nó?Bạn có biết mình cần gì khi thực hiện phương thức run() không? Python cProfile hoạt động như thế nào?Python cProfile là một tập hợp các số cho biết khoảng thời gian và tần suất các phần chương trình được gọi và chạy . Bạn có thể dễ dàng định dạng báo cáo dưới dạng mô-đun pstats. Mã hóa bằng cProfile tương đối dễ dàng. Bạn chỉ cần nhập đúng chức năng và mô-đun để gọi chức năng chạy.
CProfile hoạt động như thế nào?cHồ sơ và hồ sơ cung cấp hồ sơ xác định của các chương trình Python . Hồ sơ là một tập hợp các số liệu thống kê mô tả tần suất và thời lượng các phần khác nhau của chương trình được thực thi. Những số liệu thống kê này có thể được định dạng thành các báo cáo thông qua mô-đun pstats.
Làm thế nào để sử dụng yappi Python?Yappi là viết tắt của một trình lược tả python khác. . run() - Chức năng này có thể được sử dụng làm trình quản lý ngữ cảnh để lập hồ sơ mã bằng yappi. . yappi Hồ sơ trong lập trình là gì?Lập cấu hình chương trình là kỹ thuật tối ưu hóa nâng cao để sắp xếp lại các thủ tục hoặc mã bên trong các thủ tục, trong các chương trình ILE và chương trình dịch vụ dựa trên dữ liệu thống kê được thu thập khi chạy chương trình. |