Hướng dẫn command line trong python – dòng lệnh trong python

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. 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.

Nội dung chính Show

  • 1. Phương thức getopt.getopt trong Python
  • 2. getopt.GetoptError trong Python
  • 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.
  • Kiến thức cần có
  • Thao tác trực tiếp với Interactive Prompt
  • Chạy chương trình bằng command line & Sublime Text
  • Khởi tạo file Python
  • Thao tác trên file vừa khởi tạo
  • Kết Luận
  • Thảo luận
$ python test.py arg1 arg2 arg3

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: 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:

  • sys.argv là danh sách các tham số dòng lệnh.
  • len(sys.argv) là số tham số dòng lệnh.

Nội dung chính

  • Ví dụ
  • Phân tích các tham số dòng lệnh trong Python
    • 1. Phương thức getopt.getopt trong Python
    • 2. getopt.GetoptError trong Python
  • Updating…

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ố. : 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 Python

Phươ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ố:

  • args: Đây là danh sách tham số được truyền vào từ dòng lệnh. : Đây
    là danh sách tham số được truyền vào từ dòng lệnh.
  • option: Đây là chuỗi các tùy chọn mà script muốn để nhận ra. Với các tùy chọn mà yêu cầu một tham số thì nên được theo sau bởi một dấu hai chấm (:). : Đây là chuỗi các tùy chọn mà script muốn để nhận ra. Với các tùy chọn mà yêu cầu một tham số thì nên được theo sau bởi một dấu hai chấm (:).
  • long_option: Đây là tham số tùy ý và nếu được xác định, phải là một danh sách các chuỗi là tên các tùy chọn dài, mà được hỗ trợ. Với các tùy chọn dài yêu cầu một tham số thì nên được theo sau bởi một dấu bằng (=). Để chỉ chấp nhận các tùy chọn dài, các tùy chọn nên là một chuỗi trống. : Đây là tham số tùy ý và nếu được xác định, phải là một danh sách các chuỗi là tên các tùy chọn dài, mà được hỗ trợ. Với các tùy chọn dài yêu cầu một tham số thì nên được theo sau bởi một dấu bằng (=). Để chỉ chấp nhận các tùy chọn
    dài, các tùy chọn nên là một chuỗi trống.
  • Phương thức này trả về trả trị bao gồm hai phần tử: phần tử đầu là một danh sách các cặp (option, value). Phần tử thứ hai là danh sách các tham số chương trình. (option, value). Phần tử thứ hai là danh sách các tham số chương trình.
  • Cặp option-value được trả về có một dấu gạch nối ngắn ở trước (ví dụ -x) là tùy chọn ngắn, có hai dấu gạch nối là tùy chọn dài (ví dụ –long-option).

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. msgopt 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 "

Kết quả: :

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.

Trong các bài trước chúng ta đã cùng nhau tìm hiểu Tổng quan về Python cũng như Môi trường phát triển của nó.

Ở bài này, Kteam sẽ hướng dẫn các bạn CÁCH CHẠY MỘT CHƯƠNG TRÌNH PYTHON cơ bản nhé!CÁCH CHẠY MỘT CHƯƠNG TRÌNH
PYTHON
cơ bản nhé!

Kiến thức cần có

Để theo dõi bài này, bạn nên:

  • Cài đặt môt trường phát triển cho Python

Thao tác trực tiếp với Interactive Prompt

Ở bài trước, các bạn sử dụng Command Prompt để kiểm tra cài đặt thành công hay chưa bằng cách gõ python lên Command Prompt.Command Prompt để kiểm tra cài đặt thành công hay chưa bằng cách gõ python lên Command Prompt.

Hướng dẫn command line trong python - dòng lệnh trong python

Hướng dẫn command line trong python - dòng lệnh trong python

Như các bạn thấy ở hình trên đó chính là một Interactive Prompt để thao tác với Python.Interactive Prompt để thao tác với Python.

Ví dụ: Chúng ta sẽ chạy một chương trình huyền thoại “Hello HowKTeam” cho kết quả như hình bên dướiChúng ta sẽ chạy một chương trình huyền thoại “Hello HowKTeam” cho kết quả như hình bên dưới

  • Tạm thời các bạn không cần quan tâm đến cách mà hàm print(“Hello HowKTeam”) hoạt động. Mình sẽ giới thiệu hàm này ở bài Nhập xuất trong python.

    print(“Hello HowKTeam”)

    hoạt động. Mình sẽ giới thiệu hàm này ở bài Nhập xuất trong python.

Hướng dẫn command line trong python - dòng lệnh trong python

Như các bạn có thể thấy mình vừa thao tác trực tiếp với interactive prompt.

Ưu điểm:

  • Thao tác đơn giản, dễ dàng.
  • Cho kết quả ngay lặp tức khi kết thúc câu lệnh

Nhược điểm:

  • Không thích hợp cho việc một dãy lệnh dài, có cấu trúc
  • Khi code sai chính tả, sai logic không thể sửa

Chạy chương trình bằng command line & Sublime Text

Muốn chạy một chương trình Python bằng Command line thì chúng ta phải tạo ra được một file Python. Một file Python là một file mà có phần đuổi (mở rộng) là .pyCommand
line
thì chúng ta phải tạo ra được một file Python. Một file Python là một file mà có phần đuổi (mở rộng) là .py

Hướng dẫn command line trong python - dòng lệnh trong python

Như đã giới thiệu ở bài CÀI ĐẶT MÔI TRƯỜNG PHÁT TRIỂN PYTHON. Editor để soạn code sẽ là SUBLIME TEXT. Và mình sẽ dùng Sublime Text tạo một file Python.CÀI ĐẶT MÔI TRƯỜNG PHÁT TRIỂN PYTHON. Editor để soạn code sẽ là SUBLIME TEXT. Và mình sẽ dùng Sublime Text tạo một file Python.

Khởi tạo file Python

Bước 1: Đầu tiên, chúng ta mở Sublime Text lên và chọn File > New File .Hoặc bạn cũng có thể dùng phím tắt Ctrl + NĐầu tiên, chúng ta mở Sublime Text lên và chọn File > New File .Hoặc bạn cũng có thể dùng phím tắt Ctrl + N

Hướng dẫn command line trong python - dòng lệnh trong python

Bước 2: Tiếp tục chọn File > Save .Hoặc sử dụng phím tắt Ctrl + S để lưu lại file Tiếp tục chọn File >
Save .Hoặc sử dụng phím tắt Ctrl + S để lưu lại file

Hướng dẫn command line trong python - dòng lệnh trong python

  • Sau khi chọn Save thì sẽ có một hộp thoại yêu cầu tại Save as Type > chọn Python trong danh sách chọn. Save as Type > chọn

    Python

    trong danh sách chọn.

Hướng dẫn command line trong python - dòng lệnh trong python

  • Tiếp đến, các bạn tìm nơi để lưu lại file. Ở đây mình sẽ lưu ở ngoài Desktop

Hướng dẫn command line trong python - dòng lệnh trong python

  • Và cuối cùng, các bạn điền tên file vào ô File name. Các bạn nhớ là phải thêm .py vào cuối tên file nữa. Ở đây mình chọn tên file là HelloHowKTeam > Save

    tên file

    vào ô File name. Các bạn nhớ là phải thêm

    .py

    vào cuối tên file nữa. Ở đây mình chọn tên file là

    HelloHowKTeam

    > Save

Hướng dẫn command line trong python - dòng lệnh trong python

Sau cùng, bạn sẽ dễ dàng tìm thấy file vừa lưu tại màn hình Desktop.

Thao tác trên file vừa khởi tạo

Công đoạn tiếp theo là mình nhập code vào trong file HelloHowKTeam.py vừa mới tạo ở phần trên, sau đó lưu lại bằng Ctrl + S HelloHowKTeam.py vừa mới tạo ở phần trên, sau đó lưu lại bằng Ctrl + S

print (“Hello HowKTeam”)(“Hello HowKTeam”)

Hướng dẫn command line trong python - dòng lệnh trong python

Kế đến mình ra ngoài Desktop – vị trí lưu file khởi tạo để bắt đầu thực hiện chạy chương trình. Đầu tiên các bạn mở Command PromptCommand Prompt

Hướng dẫn command line trong python - dòng lệnh trong python

Để đến vị trí Desktop, ta sẽ gõ lệnh cd Desktopcd Desktop

Hướng dẫn command line trong python - dòng lệnh trong python

Nếu bạn tạo file python trong folder nào đó, bạn có thể dễ dàng mở cmd như sau:

  • Đầu tiên bạn click vào thanh đường dẫn trên folder, rồi xóa đi. Tiếp theo gõ cmd để hiển thị Command Prompt ngay tại đường dẫn này

    xóa đi. Tiếp theo gõ

    cmd

    để hiển thị Command Prompt ngay tại đường dẫn này

Hướng dẫn command line trong python - dòng lệnh trong python

  • Bạn đã mở được Command Prompt một cách dễ dàng

    Command Prompt

    một cách dễ dàng

Hướng dẫn command line trong python - dòng lệnh trong python

  • Ngoài ra các bạn có thể tham khảo các cách mở cmd ở bài viết Các cách mở cửa sổ CMD thông dụng

Sau đó, bạn gõ command line với cấu trúc sau > EnterEnter

python

Hướng dẫn command line trong python - dòng lệnh trong python

Và như các bạn đã thấy chúng ta đã in ra thành công dòng chữ “Hello HowKTeam”Hello HowKTeam

Hướng dẫn command line trong python - dòng lệnh trong python

Kết Luận

Qua bài học này chúng ta đã hiểu được cách chạy chương trình trong python qua interactive mode và bằng command line.

Bài sau chúng ta sẽ tìm hiểu CÁCH GHI CHÚ TRONG PYTHON.CÁCH GHI CHÚ TRONG PYTHON.

Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của mình để phát triển bài viết tốt hơn nữa. Đừng quyên “Luyện tập – Thử thách – Không ngại khó”.Luyện tập – Thử thách – Không ngại khó”.

Thảo luận

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.