Python: Closure và Decorators - Phần 1: Closure
Đóng gói hàm (Closure)
Closure là một hàm được định nghĩa bên trong một hàm khác, và hàm này sử dụng các biến từ hàm bên ngoài. Khi đó, chúng ta gọi hàm bên trong cùng với các biến được sử dụng là một closure. Ví dụ:
def tao_cong_thuc(a, b):
def tinh_toan(c):
return a + b + c
return tinh_toan
Chúng ta đã định nghĩa một hàm tao_ ...
Đăng vào ngày 10 tháng 7 lúc 20:33
Hướng dẫn dự án mã nguồn mở gym-gazebo
Hướng dẫn dự án mã nguồn mở gym-gazebo
1. Cấu trúc thư mục và giới thiệu
Dưới đây là cấu trúc thư mục của dự án gym-gazebo:
gym-gazebo/
├── gym_gazebo/
│ ├── envs/
│ │ ├── assets/
│ │ ├── __init__.py
│ │ ├── gazebo_env.py
│ │ ├── ...
│ ├── __init__.py
│ ├── utils.py
├── setup.py
├── README.md
├── requirements.txt
├── .. ...
Đăng vào ngày 9 tháng 7 lúc 23:24
Tự động hóa tấn công SQL injection mù bằng Python
Giới thiệu
Khi thực hiện tấn công SQL injection, nếu không thể thực hiện union-based injection hoặc các phương pháp khác dựa trên lỗi, chúng ta cần xem xét đến injection mù (blind injection). Trong quá trình thực hiện injection mù, chúng ta cần dựa vào phản hồi của trang (boolean blind injection) hoặc thời gian phản hồi (time-based blind inject ...
Đăng vào ngày 9 tháng 7 lúc 23:19
Kiểm Tra Từ Đảo Chữ Cái Hợp Lệ Trong Python
Mô tả bài toán
Cho hai chuỗi s và t, hãy viết một hàm để xác định xem t có phải là một từ đảo chữ cái (anagram) của s hay không.
Từ đảo chữ cái: Một từ đảo chữ cái được hình thành bằng cách sắp xếp lại các chữ cái của một từ khác, sử dụng chính xác tất cả các chữ cái gốc chỉ một lần.
Ví dụ 1:
Đầu vào: s = "anagram", t = "nagaram"
Đầu ra: true
...
Đăng vào ngày 9 tháng 7 lúc 23:15
Sử dụng get_or_create và update_or_create trong Django ORM
Trong quá trình làm việc với Django, việc kiểm tra sự tồn tại của một bản ghi trước khi thực hiện thao tác lưu trữ là yêu cầu rất phổ biến. Django cung cấp hai phương thức mạnh mẽ là get_or_create và update_or_create giúp tối ưu hóa luồng xử lý này, đảm bảo tính toàn vẹn của dữ liệu và giảm thiểu các đoạn mã kiểm tra điều kiện lặp lại.
Tìm ...
Đăng vào ngày 9 tháng 7 lúc 17:28
Python Nâng Cao: Trang Trí Hàm, Trình Tạo, Và Phương Thức Đặc Biệt
Trang Trí Hàm (Decorators)
Trong Python, decorator là một công cụ mạnh mẽ cho phép mở rộng chức năng của hàm mà không cần thay đổi nội dung hàm gốc. Đây là kỹ thuật phổ biến trong lập trình hàm bậc cao.
Decorator Cơ Bản
Hãy tưởng tượng bạn muốn bọc một món quà đơn giản thành gói quà cầu kỳ hơn:
def mon_qua():
print("iPhone 15")
def hop_qu ...
Đăng vào ngày 9 tháng 7 lúc 09:21
So Sánh Cách Gửi Yêu Cầu HTTP Sử Dụng http.client, urllib.request và Thư Viện requests Trong Python
Gửi Yêu Cầu GET Không Tham Số
GET http://httpbin.org/get
Python3 sử dụng http.client
import http.client as hconn
# 1. Thiết lập kết nối HTTP
client = hconn.HTTPConnection("httpbin.org")
# 2. Gửi yêu cầu GET với đường dẫn cụ thể
client.request("GET", '/get')
# 3. Nhận phản hồi
response = client.getresponse()
# 4. Xử lý dữ li ...
Đăng vào ngày 9 tháng 7 lúc 09:00
Kỹ Thuật Mở Rộng Lớp TestResult Trong Unittest Để Quản Lý Dữ Liệu Kiểm Thử
Giới thiệu về việc tùy chỉnh Unittest
Unittest là framework kiểm thử tự động tích hợp sẵn trong Python, cung cấp các cấu trúc điều khiển và mô hình cơ bản. Tuy nhiên, trong các dự án thực tế, chức năng gốc thường chưa đủ đáp ứng nhu cầu phức tạp như:
Tạo báo cáo kiểm thử dạng HTML.
Thực thi song song nhiều luồng mà vẫn đảm bảo báo cáo ...
Đăng vào ngày 8 tháng 7 lúc 23:31
Quản lý thông tin nhạy cảm trong dự án Python với python-dotenv
Trong quá trình phát triển Python, việc lưu trữ thông tin nhạy cảm như mật khẩu, API key hay thông tin tài khoản luôn là vấn đề cần quan tâm. Thư viện python-dotenv cung cấp giải pháp lưu trữ các biến môi trường một cách an toàn và tiện lợi, thay thế cho phương pháp dùng file .ini truyền thống.
Thư viện: python-dotenv trên GitHub
Cách sử dụng ...
Đăng vào ngày 8 tháng 7 lúc 19:19
Dùng Sublime Text 3 để debug API một cách hiệu quả
Bài viết này hướng dẫn cách sử dụng Sublime Text 3 kết hợp với một script Python tùy chỉnh để debug các API, hỗ trợ các tính năng như gửi request (GET, POST, v.v.), xử lý dữ liệu JSON và form data, quản lý headers, cookies, sessions, thực hiện ký tự số và xác thực kết quả trả về.
Tình huống sử dụng
Trong môi trường microservices, việc ...
Đăng vào ngày 8 tháng 7 lúc 14:14