Có thể không đặt giá trị mặc định trong gói cờ trong Go? Ví dụ, trong gói cờ bạn có thể viết ra những dòng sau:gói cờ trong Go - tôi có phải luôn đặt giá trị mặc định không?
filename := flag.String("file", "test.csv", "Filename to cope with")
Trong đoạn mã trên, tôi không muốn thiết đặt giá trị mặc định, đó là test.csv
trong trường hợp này, và thay vào đó luôn làm cho người sử dụng chỉ định tên tệp của riêng họ và nếu nó không được chỉ định thì tôi muốn gây ra lỗi và thoát khỏi chương trình.
Một trong những cách tôi đưa ra là lần đầu tiên tôi kiểm tra giá trị filename
sau khi thực hiện flag.Parse()
và nếu giá trị đó là test.csv
thì tôi có chương trình thoát với thông báo lỗi thích hợp. Tuy nhiên, tôi không muốn viết mã dự phòng như vậy nếu nó có thể trốn - và thậm chí nếu nó không thể, tôi muốn nghe bất kỳ cách nào tốt hơn để đối phó với vấn đề ở đây.
Bạn có thể làm những loại hoạt động trong mô-đun argparse
Python bằng cách này - Tôi chỉ muốn thực hiện điều tương tự nếu tôi có thể ...
Ngoài ra, tôi có thể thực hiện cả hai lập luận ngắn hạn và dài (trong khác từ cả hai đối số -f
và -file
?) trong gói cờ?
Cảm ơn.
Vui lòng chỉ hỏi một câu hỏi cho mỗi câu hỏi. – Kissaki