Các PEP 8 khuyến nghị các mô-đun được nhập vào đầu chương trình.Python: nhập khẩu vào đầu chương trình chính & PEP 8
Bây giờ, tôi cảm thấy rằng việc nhập một số chương trình vào đầu chương trình chính (tức là sau if __name__ == '__main__'
) có ý nghĩa. Ví dụ: nếu chương trình chính đọc đối số từ dòng lệnh, tôi có xu hướng làm import sys
ở đầu chương trình chính: theo cách này, sys
không cần phải nhập khi mã được sử dụng làm mô-đun, vì ở đó không cần, trong trường hợp này, để truy cập đối số dòng lệnh.
Vi phạm này đối với PEP 8 có hại đến mức nào? Tôi có nên kiềm chế không? hoặc sửa đổi PEP 8 có hợp lý không?
optparse có sẵn để phân tích cú pháp dòng lệnh, tốt hơn sử dụng sys.argv và thực hiện phân tích cú pháp của riêng bạn. – monkut
Related: http://stackoverflow.com/questions/1024049/is-it-pythonic-to-import-inside-functions – codeape
@monkut: optparse không đặc biệt hữu ích nếu bạn không sử dụng dòng lệnh * options * (tức là , khi bạn chỉ cần xử lý các đối số dòng lệnh không có tùy chọn). – EOL