Hướng dẫn pass argument in main python - truyền đối số trong main python

Ví dụ hôm nay là chương trình

$ python3 affirm.py -affirm Lisa
1 mà bạn có thể tải xuống nếu bạn muốn tự mình thử. Một số mã được thực hiện như một bài tập trong tệp
$ python3 affirm.py -affirm Lisa
2.

affirm.zip

Đối số dòng lệnh -Tên xác nhận

Chương trình

$ python3 affirm.py -affirm Lisa
1 có một vài tùy chọn để nói những điều tốt đẹp về một cái tên. Dưới đây là ba lần chạy của chương trình trong dòng lệnh. Những gì người dùng là in đậm, theo sau là đầu ra in của chương trình.

$ python3 affirm.py -affirm Lisa
Everything is coming up Lisa
$ python3 affirm.py -affirm Bart
Looking good Bart
$ python3 affirm.py -affirm Maggie
Today is the day for Maggie
$

Đối số dòng lệnh, hoặc "args", là thông tin bổ sung được gõ trên dòng khi một chương trình được chạy. Hệ thống này đơn giản một cách quyết liệt - các đối số dòng lệnh là các từ được gõ sau

$ python3 affirm.py -affirm Lisa
4 trên dòng lệnh, được tách ra với nhau bằng khoảng trắng. Vì vậy, trong lần đầu tiên trong dòng lệnh này:

$ python3 affirm.py -affirm Lisa

Các từ

$ python3 affirm.py -affirm Lisa
5 và
$ python3 affirm.py -affirm Lisa
6 là 2 dòng lệnh arg.

Hướng dẫn pass argument in main python - truyền đối số trong main python

Các đối số dòng lệnh như

$ python3 affirm.py -affirm Lisa
5 thường chọn một chế độ hoặc tùy chọn để chạy chương trình và các tùy chọn này thường bắt đầu bằng dấu gạch ngang như chúng ta có ở đây.

-Hello Tên

Với tùy chọn

$ python3 affirm.py -affirm Lisa
8, chương trình in một lời chào đơn giản như thế này:

$ python3 affirm.py -hello Bart
Hello Bart

-n tên num

Với tùy chọn

$ python3 affirm.py -affirm Lisa
9, chương trình in tên một số lần, như thế này.

$ python3 affirm.py -n 10 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
$ python3 affirm.py -n 100 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 

Trong các ví dụ trên, số lượng đối số dòng lệnh là ba: -n, số, tên

Dòng lệnh args mã python

def main()
    args = sys.argv[1:]
    # args is a list of the command line args

Main () ở trên bắt đầu với dòng tiêu chuẩn CS106A

$ python3 affirm.py -hello Bart
Hello Bart
0 thiết lập một danh sách có tên
$ python3 affirm.py -hello Bart
Hello Bart
1 để chứa các chuỗi ARG dòng lệnh. Dòng này hoạt động và bạn luôn có thể sử dụng nó. Nếu bạn muốn biết "sys.argv" là gì, hãy xem phần cuối của tài liệu này.

Danh sách

$ python3 affirm.py -hello Bart
Hello Bart
1 chứa một chuỗi cho mỗi đối số dòng lệnh.

1. Đối với dòng lệnh này:

$ python3 affirm.py -affirm Lisa

Args là danh sách

$ python3 affirm.py -hello Bart
Hello Bart
3

2. Đối với dòng lệnh này

$ python3 affirm.py -n 10 Maggie

Args là danh sách

$ python3 affirm.py -hello Bart
Hello Bart
4

Tuy nhiên, nhiều đối số dòng lệnh mà người dùng đã nhập vào, họ sẽ điền vào danh sách

$ python3 affirm.py -hello Bart
Hello Bart
1. Lưu ý rằng các arg trong danh sách luôn luôn là chuỗi.strings.

Cách viết Main ()

Mã trong main () có thể sử dụng một chuỗi các statators đơn giản để phát hiện các tùy chọn khác nhau, chẳng hạn như

$ python3 affirm.py -affirm Lisa
5 và chạy mã thích hợp cho mỗi tùy chọn.

Ví dụ: xem xét việc chạy chương trình với tùy chọn

$ python3 affirm.py -affirm Lisa
5 như thế này:

$ python3 affirm.py -affirm Lisa

Dưới đây là if-satement trong main () phát hiện tùy chọn dòng lệnh này và chạy mã cho nó. Mã kiểm tra xem số lượng ARGS là 2 và ARG đầu tiên (nghĩa là

$ python3 affirm.py -hello Bart
Hello Bart
8) là
$ python3 affirm.py -affirm Lisa
5. Nếu vậy, nó in tên trong
$ python3 affirm.py -n 10 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
$ python3 affirm.py -n 100 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
0 với một sự khẳng định ngẫu nhiên.

def main()
    args = sys.argv[1:]
    
    # 1. Check for the arg pattern:
    #   python3 affirm.py -affirm Bart
    #   e.g. args[0] is '-affirm' and args[1] is 'Bart'
    if len(args) == 2 and args[0] == '-affirm':
        # Select random nice phrase
        affirmation = random.choice(AFFIRMATIONS)
        # Print with the name in args[1]
        print(affirmation, args[1])

    # .. later if statements for -hello and -n ...

Hỏi: Tại sao kiểm tra xem

$ python3 affirm.py -hello Bart
Hello Bart
8 có bằng
$ python3 affirm.py -n 10 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
$ python3 affirm.py -n 100 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
2 không?

A: Danh sách

$ python3 affirm.py -hello Bart
Hello Bart
1 giữ dòng lệnh ARG. Trong trường hợp này, chúng tôi muốn kiểm tra xem dòng lệnh đầu tiên ARG là chuỗi
$ python3 affirm.py -n 10 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
$ python3 affirm.py -n 100 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
2 và
$ python3 affirm.py -hello Bart
Hello Bart
8 là ARG đầu tiên.

Chuỗi chính ()

Xem xét việc sử dụng tùy chọn -N

python3 affirm.py -n 10 Maggie

Các giá trị trong danh sách Args luôn luôn là chuỗi. Trong trường hợp này ARGS [0] là chuỗi '-n' và args [1] là chuỗi '100'. Mã cần chuyển đổi chuỗi '100' thành giá trị int 100 bằng hàm int ().strings. In this case args[0] is the string '-n' and args[1] is the string '100'. The code needs to convert the string '100' to the int value 100 using the int() function.

Ví dụ và bài tập

Tệp

$ python3 affirm.py -affirm Lisa
1 có cả ba tùy chọn dòng lệnh hoạt động: -affirm, -hello, -n

Bạn có thể chạy chương trình để xem nó làm gì và xem mã chính () làm ví dụ.

Tệp

$ python3 affirm.py -affirm Lisa
2 là như nhau, nhưng không có mã cho -hello và -n, vì vậy bạn có thể thực hành mã hóa các trường hợp đó.

Có gì với sys.argv?

Mô -đun

$ python3 affirm.py -n 10 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
$ python3 affirm.py -n 100 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
8 giữ các giao diện cho hệ điều hành và đặc biệt là nó chứa một danh sách với tên không may
$ python3 affirm.py -n 10 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
$ python3 affirm.py -n 100 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
9 giữ các đối số dòng lệnh. Cái tên
$ python3 affirm.py -n 10 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
$ python3 affirm.py -n 100 Maggie
Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie Maggie 
9 đã được chọn vào khoảng năm 1974, và kể từ đó, các ngôn ngữ lập trình liên tiếp chỉ giữ tên đó. Theo quy ước, danh sách Argv chứa một chuỗi bổ sung tại INDEX 0, tên của chính tập lệnh, ví dụ: 'Assirm.py'. Chuỗi bổ sung này không hữu ích cho chúng tôi. Do đó, chúng tôi tạo danh sách Args như thế này:

$ python3 affirm.py -affirm Lisa
0

Chúng tôi chọn tên hợp lý hơn "Args" để giữ dòng lệnh ARGS và chúng tôi sử dụng một lát để bỏ qua chuỗi không có ích tại INDEX 0, do đó tạo danh sách

$ python3 affirm.py -hello Bart
Hello Bart
1 chính xác chỉ là các đối số dòng lệnh. & nbsp;

Bản quyền 2020 Nick Parlante

Chúng ta có thể chuyển các đối số trong main () trong Python không?

Main () ở trên bắt đầu với dòng tiêu chuẩn CS106A args = sys. Argv [1:] thiết lập một danh sách có tên Args để chứa các chuỗi ARG dòng lệnh. Dòng này hoạt động và bạn luôn có thể sử dụng nó.you can always use it.

Làm thế nào để bạn chuyển một giá trị cho chính trong Python?

Sử dụng cú pháp chức năng để chuyển các biến sang hàm Sử dụng chức năng cú pháp_name (value1, value2, value3) để truyền giá trị1, value2 và value3 sang function_name.Số lượng các giá trị được truyền sẽ phù hợp với số lượng tên tham số được chỉ định trong định nghĩa hàm.Use the syntax function_name(value1, value2, value3) to pass value1 , value2 , and value3 to function_name . The number of values passed should match the number of parameter names specified in the function definition.

Làm thế nào để bạn vượt qua các đối số trong Python?

Thông tin có thể được truyền vào các chức năng như đối số.Đối số được chỉ định sau tên hàm, bên trong dấu ngoặc đơn.Bạn có thể thêm nhiều đối số như bạn muốn, chỉ cần tách chúng bằng dấu phẩy.Arguments are specified after the function name, inside the parentheses. You can add as many arguments as you want, just separate them with a comma.

Làm thế nào để bạn gọi một phương thức chính trong Python với các đối số?

Cách xác định và gọi một chức năng cơ bản trong Python..
Nhập tên chức năng ..
Tên chức năng phải được theo sau bởi dấu ngoặc đơn.Nếu có bất kỳ đối số cần thiết, chúng phải được thông qua trong dấu ngoặc đơn.Nếu chức năng không có bất kỳ đối số nào, bạn vẫn cần dấu ngoặc đơn ..