Show Cách sử dụng sys.argv trong python. sys.argv là môt danh sách [list] trong python, nó được sư dụng khi bạn chạy một lệnh command-line nào đó trên hệ thống. Ví dụ: python sys.argv arg1 arg2 Trước tiên bạn phải import mô đun sys trong script. import sys print "This is the name of the script: ", sys.argv[0] print "Number of arguments: ", len(sys.argv) print "The arguments are: " , str(sys.argv) Tên của script này : sysargv.py python test1020.py 111 This is the name of the script: test1020.py Bài đăng phổ biến từ blog nàyMedium.com là trang web có những bài viết về IT, phần mềm và công nghệ nói chung rất phổ biến và chất lượng. Nhưng khoảng 1 tuần nay không vào được
bằng cả mạng viettel và 4G của Mobi phone. Dân It thường tham khảo các bài viết trên trang này. Nhiều bài viết hay và chất lượng. là một cơ sở dữ liệu lớn cho dân IT nhưng đã bị chặn. Các bài viết này thường thì có tính quy chuẩn và dài hơn, các topic có chất lượng hơn so với stackoverflow. Nhưng các subdomain thì vẫn truy cập được như: https://about.medium.com Bạn có thể tham khảo lý do vì sao medium.com bị chặn ở Việt nam. tại trang tinh tế: Nói chung mình không
thích điều này. https://tinhte.vn/thread/website-medium-khong-truy-cap-duoc-la-do-website-chet-hay-chan-ip-viet-nam-nhi.3231608/ Như ta đã biết github là nới chứa source code nổi tiếng thế giới hiện nay, ngoài github còn có gitlab, bitbucket, codecommit, ... Cơ bản github miễn phí cho người dùng developer, nếu nhu cầu sử dụng nhiều repo cũng như project có nhiều thanh viên developer tham gia thì bạn
có thể mua bản nâng cao. Về tiến trình CI/CD process, chúng ta có thể biết tới như Jenkins, Team City, Codepipeline trên AWS, ... GitHub Actions mới ra đời gần đây , ngày 13 tháng 11 năm 2019, GitHub Actions ra phiên bản đầu tiên, trước đó khoảng 1 năm bản beta ra đời. Tham khảo tại đây : https://github.blog/2019-08-08-github-actions-now-supports-ci-cd/ GitHub Actions khá đơn giản, khi tiến trình build, test và deploy được viết trong một file có định dạng yaml nằm trong
thư mục .github/workflows/ trong chính source code của bạn. GitHub Actions là một event-driven nghĩa là chương trình chạy một loạt các dòng lệnh khi bạn nhận được 1 event, ví dụ mỗi lần một developer nào đó tạo một pull request cho một repositor Mô-đun getopt giúp bạn phân tích cú pháp các tùy chọn và tham số dòng lệnh trong Python. Mô-đun sys trong Python cung cấp sự truy cập tới bất kỳ tham số dòng lệnh nào thông qua sys.argv. Phục vụ hai mục đích:
Nội dung chính
Ví dụimport sys print 'So tham so:', len(sys.argv), 'tham so.' print 'Danh sach tham so:', str(sys.argv) Bây giờ chạy script trên như sau: $ python test.py arg1 arg2 arg3 Kết quả: So tham so: 4 tham so. Danh sach tham so: ['test.py', 'arg1', 'arg2', 'arg3'] Ghi chú: tham số đầu tiên luôn luôn là tên script và nó cũng được tính là một tham số. Python cung cấp mô-đun getopt giúp bạn phân tích cú pháp các tùy chọn và tham số dòng lệnh. Module này cung cấp hai hàm và một exception để kích hoạt việc phân tích cú pháp các tham số dòng lệnh. 1. Phương thức getopt.getopt trong PythonPhương thức này phân tích cú pháp danh sách tham số và các tùy chọn tham số dòng lệnh. Cú pháp là: getopt.getopt(args, option, [long_option]) Chi tiết về tham số:
2. getopt.GetoptError trong PythonĐây là một ngoại lệ (exception) và nó được tạo khi thấy một tùy chọn không được nhận ra trong danh sách tham số hoặc khi một tùy chọn cần một tham số mà không cung cấp tham số nào. Tham số cho exception là một chuỗi chỉ nguyên nhân gây ra lỗi. Các thuộc tính msg và opt cung cấp thông điệp lỗi và tùy chọn có liên quan. Ví dụ: Giả sử bạn muốn truyền hai tên file thông qua dòng lệnh và bạn cũng muốn cung cấp một tùy chọn để kiểm tra sự sử dụng của script. Usage của script là như sau: usage: test.py -i <inputfile> -o <outputfile> Bây giờ chạy script trên như sau: $ test.py -h usage: test.py -i <inputfile> -o <outputfile> $ test.py -i BMP -o usage: test.py -i <inputfile> -o <outputfile> $ test.py -i inputfile Input file is " inputfile Output file is " Link tham khảo: https://www.tutorialspoint.com/python/python_command_line_arguments.htm Updating... |