Bạn có thể đính kèm Python vào HTML không?
Bằng cách tận dụng cả hai Mô-đun. digiweb và phiên bản PythonInsideHTML được sửa đổi một chút. zip từ máy chủ web Karrigell Python của dự án được cấp phép BSD để biến nó thành một thư viện độc lập. Có thể chạy nhúng Python trong tài liệu HTML có thể được thực thi trong thời gian chạy Bên trong HTMLcú phápBy enclosing Python statements within a <% %> tag the Python interpreter will execute said statements. In the following example a "stored_time" variable will be created and will save the time on the local scope. <% import time %> <% stored_time = time.strftime("%d:%m:%y",time.localtime(time.time())) %> If enclosed with <%= %> it will evaluate the statement and replace the tag with the result of the executed statement. In the following example the HTML created will contain the day:month:year from the devices internal clock. <% import time %> <%= time.strftime("%d:%m:%y",time.localtime(time.time())) %> thụt đầu dòngKhai báo thụt đầu dòngMột tệp được chuyển đổi thành mã Python, mã này phải được thụt lề theo quy tắc Python; Vì vậy, hãy cẩn thận nếu bạn kết hợp Python và HTML 1 <% for i in range(10): %> 2 <%= i %>*<%= i %> : <%= i*i %> Điều này sẽ hoạt động vì sau một vòng lặp hoặc một điều kiện, HTML sau sẽ được PIH tự động thụt vào To decrement indentation, use <% end %> : 1 <% for i in range(10): %> 2 <%= i %>*<%= i %> : <%= i*i %> 3 <% end %> 4 trong ví dụ này, "xong" sẽ được viết sau khi vòng lặp for kết thúc Một ví dụ khác cho một nếu. khác. 1 <% if i: %> 2 output someting 3 <% end %> 4 <% else: %> 5 output someting else 6 <% end %> 7 (Don't forget the last <% end %> otherwise "done" would have the same indentation as line 5) But this : 1 <% for i in range(10): 2 data= '%s * %s' %(i,i) %> 3 <%= i*i %> 4 Sẽ không hoạt động, bởi vì sau câu lệnh in trên dòng 2, thụt đầu dòng trở về 0 (nó bắt đầu bằng HTML thuần túy) TagNếu bạn có mã phức tạp trong đó Python và HTML được trộn lẫn, hãy nhúng mã đó vào giữa các thẻ và 1 2 <% for i in range(10): 3 data= '%s * %s' %(i,i) %> 4 <%= i*i %> 5 6 có nghĩa. từ giờ trở đi và cho đến khi thẻ khớp, hãy sử dụng thụt lề trong nguồn PIH và để nguyên như vậy để tạo mã Python Trong ví dụ trên, thụt lề được sử dụng cho đến dòng 5 và bỏ qua sau đó. Nếu bản thân thẻ được thụt vào, đoạn mã sau sẽ được thụt vào 1 2 3 4 5 6 7 <% for i in range(10): %> 8 9 10 11 12 13 NumberSquare<%= i %><%= i**2 %> Trong dòng 7, <% được căn chỉnh nên mã Python sẽ không được thụt vào Kịch bản kết thúcNếu bạn muốn thoát tập lệnh trước khi kết thúc tài liệu, hãy nhấn Ghi vào đầu ra HTMLNếu bạn muốn ghi vào đầu ra HTML mà không sử dụng các thẻ đánh giá, bạn có thể viết trực tiếp vào đầu ra mã Python thông qua py_code.write( " Heading " ) Ví dụ làm việc từ PythonTrong ví dụ này, chúng tôi sẽ tạo một trình xử lý chung cho một loại tệp cho máy chủ web bằng cách sử dụng Mô-đun. kỹ thuật số <% import time %> <%= time.strftime("%d:%m:%y",time.localtime(time.time())) %>0 Bây giờ bạn chỉ có thể tải lên một tệp kết thúc bằng a thông qua phần quản lý tệp Python của webui, sau đó chỉ cần điều hướng đến http. //device_address/filename Ví dụ: tải lên phần sau (mẫu. pih) sẽ hiển thị thông tin về yêu cầu HTTP được chuyển đến http_handler. Mã Python được tạo bởi tập lệnh này được chạy trên cùng phạm vi với hàm http_handler để có quyền truy cập vào các đối số (loại, đường dẫn, tiêu đề, đối số) <% import time %> <%= time.strftime("%d:%m:%y",time.localtime(time.time())) %>1 Điều hướng trình duyệt của bạn đến "http. //device_address/template. pih" sẽ cung cấp cho bạn một trang hiển thị thông tin về yêu cầu HTTP Sẽ tuyệt biết bao nếu một nhà khoa học dữ liệu có thể phát triển một ứng dụng web chỉ bằng python và không cần biết javascript. Tại PyconUS 2022, Anaconda đã tiết lộ một khung mới có tên PyScript sử dụng mã python trong mã HTML để xây dựng ứng dụng. Bạn có thể sử dụng python trong mã HTML của mình. Bạn không cần biết… |