Làm cách nào để chuyển các tùy chọn mà không có bất kỳ đối số nào và không vượt qua bất kỳ đối số mặc định nào?Làm thế nào để phân tích các tùy chọn mà không có bất kỳ đối số nào bằng cách sử dụng mô-đun optparse
Ví dụ:
./log.py --ipv4
Làm cách nào để chuyển các tùy chọn mà không có bất kỳ đối số nào và không vượt qua bất kỳ đối số mặc định nào?Làm thế nào để phân tích các tùy chọn mà không có bất kỳ đối số nào bằng cách sử dụng mô-đun optparse
Ví dụ:
./log.py --ipv4
Trong khi câu trả lời lajarre là đúng, điều quan trọng cần lưu ý outparse được coi là bị phản đối.
Tôi khuyên bạn nên sử dụng argparse module mới hơn thay thế.
Vì vậy, mã của bạn sẽ trông như thế:
import argparse
parser = argparse.ArgumentParser(description='This is my description')
parser.add_argument('--ipv4', action='store_true', dest='ipv4')
Sử dụng -foo hoặc --foo cờ làm cho các đối số tùy chọn. See this documentation để biết thêm về các đối số tùy chọn.
Chỉnh sửa: Và đây là tài liệu cụ thể cho số add_argument method.
Sửa 2: Ngoài ra, nếu bạn muốn chấp nhận một trong hai -foo hoặc --foo bạn có thể làm
parser.add_argument('-ipv4', '--ipv4', action='store_true', dest='ipv4')
parser.add_option("--ipv4", action="store_true", dest="ipv4")
Xem http://docs.python.org/2/library/optparse.html#handling-boolean-flag-options
ohh, thanks a lot :) –
Tại sao điều này chỉ có một cuộc bỏ phiếu lên (của tôi! ... và của bạn nữa @Murkantilism)? – AJP