Lấy giá trị đối số Argument khi chạy python bằng command
Khi chạy python bằng dòng lệnh, nếu bạn muốn truyền các đối số và nắm bắt các giá trị của các số kép như sau:
python upload.py --file=abc.txt --storage=amazon_s3
Sau đó, bạn có thể sử dụng thư viện Python: argparse. Thư viện này được tích hợp sẵn từ Python 3.2 nên bạn không cần cài đặt gì cả. Phần tài liệu của thư viện này nằm ở đây.
Trước tiên, hãy nhập thư viện
from argparse import ArgumentParser
Sau đó, xác định các Đối số bạn muốn
# Add arguments parser = ArgumentParser() parser.add_argument("-f", "--file", dest="local_file", help="Please specify file", metavar="str") parser.add_argument("-s", "--storage", dest="storage_host", help="Please specify storage", metavar="str")
- Tham số đầu tiên, ví dụ: -f, -s là Key của số (ngắn)
- Tham số thứ hai, ví dụ –file, –storage là Key của đối số (long).
- dest: là Key của biến args mà chúng ta sẽ sử dụng để nhận giá trị của đối số
- trợ giúp: Nếu có một tham số đầu vào không chỉ định giá trị được truyền, thông báo này sẽ được hiển thị
- metavar: kiểu dữ liệu đầu vào
Cuối cùng, bạn nhận được giá trị được truyền như sau:
# parse arguments args = parser.parse_args()
Vì vậy, toàn bộ mã của chúng tôi như sau:
from argparse import ArgumentParser # Add arguments parser = ArgumentParser() parser.add_argument("-f", "--file", dest="local_file", help="Please specify file", metavar="str") parser.add_argument("-s", "--storage", dest="storage_host", help="Please specify storage", metavar="str") # parse arguments args = parser.parse_args() print(args)
Kết quả:
Để biết thêm thông tin về cách sử dụng thư viện này, vui lòng tham khảo tài liệu đã gửi ở trên.
Nguồn: vinasupport.com