Hướng dẫn python string command line argument - đối số dòng lệnh chuỗi python

Các đối số được đưa ra theo tên của chương trình trong vỏ dòng lệnh của hệ điều hành được gọi là đối số dòng lệnh. Python cung cấp nhiều cách khác nhau để đối phó với các loại đối số này. Ba phổ biến nhất là: & nbsp;Command Line Arguments. Python provides various ways of dealing with these types of arguments. The three most common are: 

  • Sử dụng sys.argv
  • Sử dụng mô -đun GetOpt
  • Sử dụng mô -đun argparse

Sử dụng sys.argv

Sử dụng mô -đun GetOpt
One such variable is sys.argv which is a simple list structure. It’s main purpose are:

  • Sử dụng mô -đun argparse
  • Mô -đun SYS cung cấp các chức năng và biến được sử dụng để thao tác các phần khác nhau của môi trường thời gian chạy Python. Mô -đun này cung cấp quyền truy cập vào một số biến được sử dụng hoặc duy trì bởi trình thông dịch và các chức năng tương tác mạnh mẽ với trình thông dịch. Một biến đó là sys.argv là cấu trúc danh sách đơn giản. Mục đích chính của nó là:
  • Nó là một danh sách các đối số dòng lệnh.
     

Len (sys.argv) cung cấp số lượng đối số dòng lệnh. Let’s suppose there is a Python script for adding two numbers and the numbers are passed as command-line arguments.
 

Python3

sys.argv [0] là tên của tập lệnh Python hiện tại. & nbsp; & nbsp;

Ví dụ: Hãy giả sử rằng có một tập lệnh Python để thêm hai số và các số được truyền dưới dạng đối số dòng lệnh. & NBSP;

print("Total arguments passed:", n)

print(sys2sys3sys4sys5

import sys

n = len(sys.argv)

print(sys8sys9= n 1n 2

n 3 n 4n 5 n 6(n 8n 9

n = len(sys.argv)

print(sys8sys9= n 1n 2

print((sys.argv)4(sys.argv)5=6n 2

Output: 
 

Hướng dẫn python string command line argument - đối số dòng lệnh chuỗi python

Sử dụng mô -đun GetOpt

Sử dụng mô -đun argparsegetopt module is similar to the getopt() function of C. Unlike sys module getopt module extends the separation of the input string by parameter validation. It allows both short, and long options including a value assignment. However, this module requires the use of the sys module to process input data properly. To use getopt module, it is required to remove the first element from the list of command-line arguments. 
 

Mô -đun SYS cung cấp các chức năng và biến được sử dụng để thao tác các phần khác nhau của môi trường thời gian chạy Python. Mô -đun này cung cấp quyền truy cập vào một số biến được sử dụng hoặc duy trì bởi trình thông dịch và các chức năng tương tác mạnh mẽ với trình thông dịch. Một biến đó là sys.argv là cấu trúc danh sách đơn giản. Mục đích chính của nó là: getopt.getopt(args, options, [long_options])
Parameters: 
args: List of arguments to be passed. 
options: String of option letters that the script want to recognize. Options that require an argument should be followed by a colon (:). 
long_options: List of string with the name of long options. Options that require arguments should be followed by an equal sign (=).
Return Type: Returns value consisting of two elements: the first is a list of (option, value) pairs. The second is the list of program arguments left after the option list was stripped. 
 

Example:

Python3

Nó là một danh sách các đối số dòng lệnh.

Len (sys.argv) cung cấp số lượng đối số dòng lệnh.

sys.argv [0] là tên của tập lệnh Python hiện tại. & nbsp; & nbsp;

Ví dụ: Hãy giả sử rằng có một tập lệnh Python để thêm hai số và các số được truyền dưới dạng đối số dòng lệnh. & NBSP;

(7(8

import sys

n = len(sys.argv)

print(sys8sys9= n 1n 2

n 3 n 4n 5 n 6(n 8n 9

=0print=2= n 1n 2

=6 = sys4

=0=6 len8= (sys.argv)0(sys.argv)1

Mô -đun Python GetOpt tương tự như hàm getOpt () của C. Không giống như mô -đun SYS Module GetOpt Mở rộng phân tách chuỗi đầu vào bằng xác thực tham số. Nó cho phép cả hai tùy chọn ngắn và dài bao gồm một gán giá trị. Tuy nhiên, mô -đun này yêu cầu sử dụng mô -đun SYS để xử lý dữ liệu đầu vào đúng cách. Để sử dụng mô-đun GetOpt, bắt buộc phải xóa phần tử đầu tiên khỏi danh sách các đối số dòng lệnh. & Nbsp; & nbsp;

Cú pháp: getOpt.getOpt (args, Tùy chọn, [long_options]) tham số: & nbsp; args: danh sách các đối số sẽ được truyền. & Nbsp; Tùy chọn: Chuỗi các chữ cái tùy chọn mà tập lệnh muốn nhận ra. Các tùy chọn yêu cầu một đối số phải được theo sau bởi một dấu hai chấm (:). & Nbsp; long_options: Danh sách chuỗi có tên của các tùy chọn dài. Các tùy chọn yêu cầu đối số phải được theo sau bởi một dấu hiệu bằng nhau (=). Loại trả về: Giá trị trả về bao gồm hai phần tử: Đầu tiên là danh sách các cặp (tùy chọn, giá trị). Thứ hai là danh sách các đối số chương trình còn lại sau khi danh sách tùy chọn bị tước. & NBSP; & NBSP;

import (sys.argv)9

Output: 
 

Hướng dẫn python string command line argument - đối số dòng lệnh chuỗi python

Sử dụng mô -đun argparse

print0= print2n 8print4
 

print5= print7 As a default optional argument, it includes -h, along with its long version –help.
 

print8= (0(1(sys.argv)5(3(sys.argv)5555555 Basic use of argparse module.
 

Python3

=0"Total arguments passed:"0= "Total arguments passed:"2

=0____23 "Total arguments passed:"5n 5 "Total arguments passed:"7

sys46

Output: 
 

Hướng dẫn python string command line argument - đối số dòng lệnh chuỗi python

"Total arguments passed:"8"Total arguments passed:"9 , n)0n 5 (, n)3(sys.argv)5, n)5, n)6
Example 2: Adding description to the help message.
 

Python3

=0"Total arguments passed:"0= "Total arguments passed:"2

=0____23 "Total arguments passed:"5n 5 "Total arguments passed:"7

"Total arguments passed:"8"Total arguments passed:"9 , n)0n 5 (, n)3(sys.argv)5, n)5, n)6

sys46

, n)7print (sys00n 2
 

Hướng dẫn python string command line argument - đối số dòng lệnh chuỗi python

"Total arguments passed:"8sys03 , n)0n 5 (sys07(sys.argv)55____109, n)6
Example 3: Defining optional value
 

Python3

=0"Total arguments passed:"0= "Total arguments passed:"2

=0____23 "Total arguments passed:"5n 5 "Total arguments passed:"7

"Total arguments passed:"8"Total arguments passed:"9 , n)0n 5 (, n)3(sys.argv)5, n)5, n)6

, n)7print (sys00n 2

"Total arguments passed:"8sys03 , n)0n 5 (sys07(sys.argv)55____109, n)6

, n)7print (sys14sys3sys4__

Output: 
 

Hướng dẫn python string command line argument - đối số dòng lệnh chuỗi python


Có phải các đối số dòng lệnh trong Python?

Python lưu trữ tất cả các đối số dòng lệnh dưới dạng chuỗi vì tất cả các đối số dòng lệnh được trao cho Python dưới dạng văn bản của hệ điều hành.Python không thực hiện bất kỳ xử lý nào với họ;Tùy thuộc vào chúng ta để tạo ra ý nghĩa của những lập luận này. because all command-line arguments are given to Python as text by the operating system. Python doesn't do any processing with them; it's up to us to make meaning of these arguments.

Làm thế nào để bạn lấy một đối số chuỗi trong Python?

Chương trình: # Python Chương trình chuyển một chuỗi vào hàm # Định nghĩa chức năng: Nó sẽ chấp nhận # một tham số chuỗi và in nó DEF PRINTMSG (str): # in tham số in str # Main Code # function gọi printmsg ("Xin chào thế giới!") printmsg (" Xin chào! Tôi tốt. ")def printMsg(str): # printing the parameter print str # Main code # function calls printMsg("Hello world!") printMsg("Hi! I am good.")

Làm thế nào để bạn vượt qua một danh sách dưới dạng đối số dòng lệnh trong Python?

Làm việc với dòng lệnh: Hãy xem xét mã dưới đây được viết trong cmdlis.py.nhập khẩu sys.In ("Tên của chương trình là", sys.argv [0]) ....
Gọi một danh sách bằng dòng lệnh.nhập khẩu sys.....
Làm việc với danh sách được gọi bằng dòng lệnh.sys.....
Làm việc với nhiều danh sách được truy xuất thông qua dòng lệnh.Nhập SYS ..