Vòng lặp xác thực đầu vào trong javatpoint python

Kiểm thử theo hướng dữ liệu là một phương pháp kiểm thử phần mềm trong đó dữ liệu kiểm thử được lưu trữ ở định dạng bảng hoặc bảng tính. Thử nghiệm theo hướng dữ liệu cho phép người thử nghiệm nhập một tập lệnh thử nghiệm duy nhất có thể thực hiện các thử nghiệm cho tất cả dữ liệu thử nghiệm từ một bảng và mong đợi đầu ra thử nghiệm trong cùng một bảng. Nó còn được gọi là thử nghiệm theo hướng bảng hoặc thử nghiệm tham số hóa

Khung điều khiển dữ liệu

Data Driven Framework là một framework kiểm thử tự động trong đó các giá trị đầu vào được đọc từ các tệp dữ liệu và được lưu trữ thành các biến trong tập lệnh kiểm tra. Nó cho phép người thử nghiệm xây dựng cả trường hợp thử nghiệm tích cực và tiêu cực thành một thử nghiệm duy nhất. Dữ liệu đầu vào trong khung điều khiển dữ liệu có thể được lưu trữ trong một hoặc nhiều nguồn dữ liệu như. xl,. xml,. csv và cơ sở dữ liệu

Trong hướng dẫn này, bạn sẽ học

  • Thử nghiệm theo hướng dữ liệu là gì?
  • Tại sao phải thử nghiệm theo hướng dữ liệu?
  • Cách tạo Khung tự động hóa theo hướng dữ liệu
  • Các phương pháp hay nhất về thử nghiệm Theo hướng dữ liệu
  • Ưu điểm của thử nghiệm theo hướng dữ liệu
  • Nhược điểm của thử nghiệm theo hướng dữ liệu

Tại sao phải thử nghiệm theo hướng dữ liệu?

Kiểm tra theo hướng dữ liệu rất quan trọng vì người kiểm tra thường có nhiều bộ dữ liệu cho một lần kiểm tra và việc tạo các kiểm tra riêng lẻ cho từng bộ dữ liệu có thể tốn thời gian. Thử nghiệm theo hướng dữ liệu giúp tách biệt dữ liệu khỏi các tập lệnh thử nghiệm và các tập lệnh thử nghiệm giống nhau có thể được thực thi cho các kết hợp dữ liệu thử nghiệm đầu vào khác nhau và kết quả thử nghiệm có thể được tạo ra một cách hiệu quả

Thí dụ

Ví dụ: chúng tôi muốn kiểm tra hệ thống đăng nhập với nhiều trường nhập liệu với 1000 bộ dữ liệu khác nhau

Để kiểm tra điều này, bạn có thể thực hiện các cách tiếp cận khác nhau sau đây

Cách tiếp cận 1] Tạo 1000 tập lệnh cho mỗi bộ dữ liệu và chạy từng thử nghiệm riêng biệt từng cái một

Cách tiếp cận 2] Thay đổi thủ công giá trị trong tập lệnh thử nghiệm và chạy nó nhiều lần

Cách tiếp cận 3] Nhập dữ liệu từ bảng excel. Lần lượt tìm nạp dữ liệu kiểm tra từ các hàng excel và thực thi tập lệnh

Trong ba tình huống đã cho, hai tình huống đầu tiên tốn nhiều công sức và thời gian. Do đó, lý tưởng nhất là làm theo cách tiếp cận thứ ba

Do đó, cách tiếp cận thứ ba không gì khác ngoài khuôn khổ Theo hướng dữ liệu

Cách tạo Khung tự động hóa theo hướng dữ liệu

Cân nhắc việc bạn muốn Kiểm tra chức năng Đăng nhập của một ứng dụng

Bước 1] Xác định các trường hợp thử nghiệm

  • Nhập đúng tên người dùng và mật khẩu – Đăng nhập thành công
  • Nhập tên người dùng không chính xác và mật khẩu chính xác – Lỗi đăng nhập
  • Nhập tên người dùng chính xác và mật khẩu không chính xác – Lỗi đăng nhập

Bước 2] Tạo các bước kiểm thử chi tiết cho 3 Test Case trên

Trường hợp thử nghiệm#Mô tảCác bước thử nghiệmDữ liệu thử nghiệmKết quả mong đợi1Kiểm tra thông tin đăng nhập hợp lệ
  1. Chạy chương trình
  2. Nhập tên người dùng mật khẩu
  3. Nhấp vào Được rồi
  4. Kiểm tra kết quả
tên tài khoản. mật khẩu hợp lệ. hợp lệĐăng nhập Thành công2Kiểm tra thông tin đăng nhập không hợp lệ
  1. Chạy chương trình
  2. Nhập tên người dùng mật khẩu
  3. Nhấp vào Được rồi
  4. Kiểm tra kết quả
tên tài khoản. mật khẩu không hợp lệ. hợp lệĐăng nhập Fail3Kiểm tra đăng nhập cho thông tin đăng nhập không hợp lệ
  1. Chạy chương trình
  2. Nhập tên người dùng mật khẩu
  3. Nhấp vào Được rồi
  4. Kiểm tra kết quả
tên tài khoản. mật khẩu hợp lệ. không hợp lệĐăng nhập không thành công

Bước 3] Tạo Test Script

Nếu bạn tuân thủ các Bước Kiểm tra Vẫn phổ biến qua 3 Bước Kiểm tra. Bạn cần tạo một Test Script để thực hiện các bước này

// This is Pseudo Code 

// Test Step 1: Launch Application 
driver.get["URL of the Application"];  

// Test Step 2: Enter Username 
txtbox_username.sendKeys["valid"]; 

// Test Step 3: Enter Password 
txtbox_password.sendKeys["invalid"]; 

// Test Step 4: Check Results 
If [Next Screen] print success else Fail

Bước 4] Tạo excel/csv với Dữ liệu kiểm tra đầu vào

Bước 5] Bước Sửa đổi tập lệnh để lặp lại dữ liệu kiểm tra đầu vào. Các lệnh đầu vào cũng nên được tham số hóa

// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}

Trên đây chỉ là 3 trường hợp thử nghiệm. Tập lệnh thử nghiệm có thể được sử dụng để lặp lại các trường hợp thử nghiệm sau chỉ bằng cách thêm các giá trị dữ liệu thử nghiệm vào Excel

Trong Python, vòng lặp bên trong vòng lặp được gọi là vòng lặp lồng nhau. Trong hướng dẫn này, chúng ta sẽ tìm hiểu về các vòng lặp lồng nhau trong Python với sự trợ giúp của các ví dụ

Ngoài ra, Giải quyết

  • Bài tập vòng lặp Python
  • Trắc nghiệm vòng lặp Python

Mục lục

  • Vòng lặp lồng nhau trong Python là gì?
  • Python lồng nhau cho vòng lặp
    • Vòng lặp lồng nhau để in mẫu
    • Vòng lặp while bên trong vòng lặp for
    • Thực tiễn. In mẫu hình chữ nhật có 5 hàng 3 cột hình ngôi sao
  • Phá vỡ vòng lặp lồng nhau
  • Tiếp tục Vòng lặp lồng nhau
  • Các vòng lặp lồng nhau một dòng sử dụng hiểu danh sách
  • Vòng lặp lồng nhau trong Python
    • vòng lặp for bên trong vòng lặp While
  • Khi nào nên sử dụng Vòng lặp lồng nhau trong Python?

Vòng lặp lồng nhau trong Python là gì?

Một vòng lặp lồng nhau là một vòng lặp bên trong thân của vòng lặp bên ngoài. Vòng lặp bên trong hoặc bên ngoài có thể là bất kỳ loại nào, chẳng hạn như vòng lặp while hoặc vòng lặp for. Ví dụ: vòng lặp

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
3 bên ngoài có thể chứa vòng lặp
1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
4 và ngược lại

Vòng ngoài có thể chứa nhiều hơn một vòng trong. Không có giới hạn về chuỗi các vòng lặp

Trong vòng lặp lồng nhau, số lần lặp sẽ bằng số lần lặp ở vòng ngoài nhân với số lần lặp ở vòng trong

Trong mỗi lần lặp của vòng lặp bên ngoài, vòng lặp bên trong thực hiện tất cả các lần lặp của nó. Đối với mỗi lần lặp của một vòng lặp bên ngoài, vòng lặp bên trong sẽ bắt đầu lại và hoàn thành việc thực hiện của nó trước khi vòng lặp bên ngoài có thể tiếp tục đến lần lặp tiếp theo của nó

Vòng lặp lồng nhau thường được sử dụng để làm việc với cấu trúc dữ liệu đa chiều, chẳng hạn như in mảng hai chiều, lặp lại danh sách chứa danh sách lồng nhau

Vòng lặp lồng nhau là một phần của câu lệnh luồng điều khiển giúp bạn hiểu kiến ​​thức cơ bản về Python

Python lồng nhau cho vòng lặp

Trong Python, vòng lặp for được sử dụng để lặp qua một chuỗi chẳng hạn như danh sách, chuỗi, bộ dữ liệu, các đối tượng có thể lặp khác như phạm vi

Cú pháp sử dụng vòng lặp lồng nhau trong Python

# outer for loop
for element in sequence 
   # inner for loop
   for element in sequence:
       body of inner for loop
   body of outer for loop

Trong ví dụ này, chúng tôi đang sử dụng vòng lặp for bên trong vòng lặp

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
3. Trong ví dụ này, chúng tôi đang in một bảng cửu chương gồm mười số đầu tiên

  • Vòng lặp
    1 2 3 4 5 6 7 8 9 10 
    2 4 6 8 10 12 14 16 18 20 
    3 6 9 12 15 18 21 24 27 30 
    4 8 12 16 20 24 28 32 36 40 
    5 10 15 20 25 30 35 40 45 50 
    6 12 18 24 30 36 42 48 54 60 
    7 14 21 28 35 42 49 56 63 70 
    8 16 24 32 40 48 56 64 72 80 
    9 18 27 36 45 54 63 72 81 90 
    10 20 30 40 50 60 70 80 90 100 
    3 bên ngoài sử dụng hàm range[] để lặp qua mười số đầu tiên
  • Vòng lặp
    1 2 3 4 5 6 7 8 9 10 
    2 4 6 8 10 12 14 16 18 20 
    3 6 9 12 15 18 21 24 27 30 
    4 8 12 16 20 24 28 32 36 40 
    5 10 15 20 25 30 35 40 45 50 
    6 12 18 24 30 36 42 48 54 60 
    7 14 21 28 35 42 49 56 63 70 
    8 16 24 32 40 48 56 64 72 80 
    9 18 27 36 45 54 63 72 81 90 
    10 20 30 40 50 60 70 80 90 100 
    3 bên trong sẽ thực hiện mười lần cho mỗi số bên ngoài
  • Trong phần thân của vòng lặp bên trong, chúng tôi sẽ in phép nhân của số bên ngoài và số hiện tại
  • Vòng lặp bên trong chẳng là gì ngoài phần thân của vòng lặp bên ngoài

Python lồng nhau cho vòng lặp

Thí dụ. Viết chương trình vòng lặp

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
3 lồng nhau để in bảng cửu chương trong Python

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]

đầu ra

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
  • Trong chương trình này, vòng lặp
    1 2 3 4 5 6 7 8 9 10 
    2 4 6 8 10 12 14 16 18 20 
    3 6 9 12 15 18 21 24 27 30 
    4 8 12 16 20 24 28 32 36 40 
    5 10 15 20 25 30 35 40 45 50 
    6 12 18 24 30 36 42 48 54 60 
    7 14 21 28 35 42 49 56 63 70 
    8 16 24 32 40 48 56 64 72 80 
    9 18 27 36 45 54 63 72 81 90 
    10 20 30 40 50 60 70 80 90 100 
    3 bên ngoài lặp lại các số từ 1 đến 10.
    // This is Pseudo Code
    // Loop 3 Times
    for [i = 0; i & lt; = 3; i++] {
        // Read data from Excel and store into variables
        int input_1 = ReadExcel[i, 0];
        int input_2 = ReadExcel[i, 1];
    
        // Test Step 1: Launch Application
        driver.get["URL of the Application"];
    
        // Test Step 2: Enter Username
        txtbox_username.sendKeys[input_1];
        // Test Step 3: Enter Password
    
        txtbox_password.sendKeys[input_2];
        // Test Step 4: Check Results
        If[Next Screen] print success
        else Fail
    }
    20 trả về 10 số. Vậy tổng số lần lặp của vòng ngoài là 10
  • Trong lần lặp đầu tiên của vòng lặp lồng nhau, số là 1. Trong phần tiếp theo, nó 2. và cứ thế cho đến 10
  • Tiếp theo, Đối với mỗi lần lặp của vòng lặp bên ngoài, vòng lặp bên trong sẽ thực hiện mười lần. Vòng lặp bên trong cũng sẽ thực hiện mười lần vì chúng tôi đang in bảng nhân lên đến mười
  • Trong mỗi lần lặp của một vòng lặp bên trong, chúng tôi đã tính phép nhân của hai số

Vòng lặp lồng nhau để in mẫu

Một cách sử dụng phổ biến nhất khác của vòng lặp lồng nhau là in các mẫu số và ngôi sao khác nhau

Hãy xem cách sử dụng vòng lặp lồng nhau để in mẫu sau trong Python

Họa tiết

// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}
2

Chương trình

// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}
4
  • Trong chương trình này, vòng lặp bên ngoài là số hàng in.  
  • Số lượng hàng là năm, vì vậy vòng lặp bên ngoài sẽ thực hiện năm lần
  • Tiếp theo, vòng lặp bên trong là tổng số cột trong mỗi hàng
  • Đối với mỗi lần lặp của vòng lặp bên ngoài, số cột được tăng thêm 1
  • Trong lần lặp đầu tiên của vòng lặp bên ngoài, số lượng cột là 1, trong lần tiếp theo là 2. và như thế
  • Vòng lặp bên trong bằng với số lượng cột
  • Trong mỗi lần lặp của một vòng lặp bên trong, chúng tôi in dấu sao

Vòng lặp while bên trong vòng lặp for

Việc sử dụng một loại vòng lặp bên trong một loại vòng lặp khác là rất phổ biến và hữu ích. chúng ta có thể đặt một vòng lặp while bên trong vòng lặp 

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
3

Giả sử chúng tôi muốn lặp lại mỗi tên trong danh sách năm lần

  • Ở đây chúng tôi sẽ lặp lại danh sách bằng cách sử dụng vòng lặp for bên ngoài
  • Trong mỗi lần lặp của vòng lặp for bên ngoài, vòng lặp for bên trong thực hiện năm lần để in tên hiện tại năm lần
// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}
6

đầu ra

// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}
7

Thực tiễn. In mẫu hình chữ nhật có 5 hàng 3 cột hình ngôi sao

Giải bài tập vòng lặp lồng nhau trong Python dưới đây

In các ngôi sao hình chữ nhật sau

// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}
8

Giải thêm bài tập vòng lặp

Hiển thị giải pháp

// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}
9

Phá vỡ vòng lặp lồng nhau

Câu lệnh break được sử dụng bên trong vòng lặp để thoát khỏi vòng lặp. Nếu câu lệnh break được sử dụng bên trong vòng lặp lồng nhau [vòng lặp bên trong vòng lặp khác], nó sẽ kết thúc vòng lặp trong cùng

Trong ví dụ sau, chúng ta có hai vòng lặp. Vòng lặp

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
3 bên ngoài lặp lại bốn số đầu tiên bằng cách sử dụng hàm
// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}
20 và vòng lặp
1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
3 bên trong cũng lặp lại bốn số đầu tiên. Nếu số bên ngoài và số hiện tại của vòng lặp bên trong giống nhau, thì ngắt vòng lặp bên trong [lồng nhau]

Thí dụ

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
3

đầu ra

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]
0

Như bạn có thể thấy ở đầu ra, không có hàng nào chứa cùng một số

Tiếp tục Vòng lặp lồng nhau

Câu lệnh tiếp tục bỏ qua bước lặp hiện tại và chuyển sang bước lặp tiếp theo. Trong Python, khi gặp câu lệnh

// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}
25 bên trong vòng lặp, nó sẽ bỏ qua tất cả các câu lệnh bên dưới nó và ngay lập tức chuyển sang bước lặp tiếp theo

Trong ví dụ sau, chúng ta có hai vòng lặp. Vòng lặp for bên ngoài lặp lại danh sách đầu tiên và vòng lặp bên trong cũng lặp lại danh sách số thứ hai

Nếu số bên ngoài và số hiện tại của vòng lặp bên trong giống nhau, thì hãy chuyển sang lần lặp tiếp theo của vòng lặp bên trong

Thí dụ

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]
1

đầu ra

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]
2

Như bạn có thể thấy ở đầu ra, không có số nào giống nhau nhân với nhau

Các vòng lặp lồng nhau một dòng sử dụng hiểu danh sách

Ví dụ: nếu bạn có hai danh sách và muốn lấy tất cả các kết hợp của chúng, Để đạt được điều này, bạn cần sử dụng hai vòng lặp lồng nhau như được đề cập bên dưới

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]
3

Bạn có thể viết mã nhanh và gọn hơn bằng cách sử dụng nén danh sách và vòng lặp lồng nhau như dưới đây

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]
4

Làm thế nào để viết nó

  • Đầu tiên, Viết một vòng lặp
    1 2 3 4 5 6 7 8 9 10 
    2 4 6 8 10 12 14 16 18 20 
    3 6 9 12 15 18 21 24 27 30 
    4 8 12 16 20 24 28 32 36 40 
    5 10 15 20 25 30 35 40 45 50 
    6 12 18 24 30 36 42 48 54 60 
    7 14 21 28 35 42 49 56 63 70 
    8 16 24 32 40 48 56 64 72 80 
    9 18 27 36 45 54 63 72 81 90 
    10 20 30 40 50 60 70 80 90 100 
    3 bên ngoài sẽ lặp lại danh sách đầu tiên như
    // This is Pseudo Code
    // Loop 3 Times
    for [i = 0; i & lt; = 3; i++] {
        // Read data from Excel and store into variables
        int input_1 = ReadExcel[i, 0];
        int input_2 = ReadExcel[i, 1];
    
        // Test Step 1: Launch Application
        driver.get["URL of the Application"];
    
        // Test Step 2: Enter Username
        txtbox_username.sendKeys[input_1];
        // Test Step 3: Enter Password
    
        txtbox_password.sendKeys[input_2];
        // Test Step 4: Check Results
        If[Next Screen] print success
        else Fail
    }
    27
  • Tiếp theo, Viết một vòng lặp bên trong sẽ lặp lại danh sách thứ hai sau vòng lặp bên ngoài như
    // This is Pseudo Code
    // Loop 3 Times
    for [i = 0; i & lt; = 3; i++] {
        // Read data from Excel and store into variables
        int input_1 = ReadExcel[i, 0];
        int input_2 = ReadExcel[i, 1];
    
        // Test Step 1: Launch Application
        driver.get["URL of the Application"];
    
        // Test Step 2: Enter Username
        txtbox_username.sendKeys[input_1];
        // Test Step 3: Enter Password
    
        txtbox_password.sendKeys[input_2];
        // Test Step 4: Check Results
        If[Next Screen] print success
        else Fail
    }
    28
  • Cuối cùng, tính cộng số ngoài và số trong như
    // This is Pseudo Code
    // Loop 3 Times
    for [i = 0; i & lt; = 3; i++] {
        // Read data from Excel and store into variables
        int input_1 = ReadExcel[i, 0];
        int input_2 = ReadExcel[i, 1];
    
        // Test Step 1: Launch Application
        driver.get["URL of the Application"];
    
        // Test Step 2: Enter Username
        txtbox_username.sendKeys[input_1];
        // Test Step 3: Enter Password
    
        txtbox_password.sendKeys[input_2];
        // Test Step 4: Check Results
        If[Next Screen] print success
        else Fail
    }
    29
  • Cuối cùng, lưu trữ kết quả trong một danh sách mới như
    // This is Pseudo Code
    // Loop 3 Times
    for [i = 0; i & lt; = 3; i++] {
        // Read data from Excel and store into variables
        int input_1 = ReadExcel[i, 0];
        int input_2 = ReadExcel[i, 1];
    
        // Test Step 1: Launch Application
        driver.get["URL of the Application"];
    
        // Test Step 2: Enter Username
        txtbox_username.sendKeys[input_1];
        // Test Step 3: Enter Password
    
        txtbox_password.sendKeys[input_2];
        // Test Step 4: Check Results
        If[Next Screen] print success
        else Fail
    }
    40

Hãy xem thêm các ví dụ như vậy

Trong ví dụ này, chúng ta sẽ sử dụng hai vòng lặp

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
3 trong phần Hiểu danh sách và kết quả cuối cùng sẽ là một danh sách các danh sách. chúng tôi sẽ không bao gồm các số giống nhau trong mỗi danh sách. chúng tôi sẽ lọc chúng bằng điều kiện if

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]
5

đầu ra

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]
6

Vòng lặp lồng nhau trong Python

Trong Python, Câu lệnh vòng lặp while lặp đi lặp lại việc thực thi một khối mã trong khi một điều kiện cụ thể là đúng. Chúng ta sử dụng vòng lặp w a while khi số lần lặp không cố định

Trong phần này, chúng ta sẽ xem cách sử dụng vòng lặp while bên trong vòng lặp while khác

Cú pháp để viết câu lệnh vòng lặp while lồng nhau trong Python như sau

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]
7

Thí dụ

Trong ví dụ này, chúng tôi sẽ in 10 số đầu tiên trên mỗi dòng 5 lần

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]
8

đầu ra

# outer loop
for i in range[1, 11]:
    # nested loop
    # to iterate from 1 to 10
    for j in range[1, 11]:
        # print multiplication
        print[i * j, end=' ']
    print[]
9

vòng lặp for bên trong vòng lặp While

Đôi khi sẽ hữu ích khi sử dụng một loại vòng lặp bên trong một loại vòng lặp khác. chúng ta có thể đặt một vòng lặp 

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
3 bên trong vòng lặp 
1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
4

Giả sử chúng ta muốn in tất cả các số hoàn hảo từ 1 đến 100

  • Ở đây chúng tôi sẽ lặp lại 100 số đầu tiên bằng cách sử dụng vòng lặp
    1 2 3 4 5 6 7 8 9 10 
    2 4 6 8 10 12 14 16 18 20 
    3 6 9 12 15 18 21 24 27 30 
    4 8 12 16 20 24 28 32 36 40 
    5 10 15 20 25 30 35 40 45 50 
    6 12 18 24 30 36 42 48 54 60 
    7 14 21 28 35 42 49 56 63 70 
    8 16 24 32 40 48 56 64 72 80 
    9 18 27 36 45 54 63 72 81 90 
    10 20 30 40 50 60 70 80 90 100 
    4
  • Trong mỗi lần lặp của vòng lặp
    1 2 3 4 5 6 7 8 9 10 
    2 4 6 8 10 12 14 16 18 20 
    3 6 9 12 15 18 21 24 27 30 
    4 8 12 16 20 24 28 32 36 40 
    5 10 15 20 25 30 35 40 45 50 
    6 12 18 24 30 36 42 48 54 60 
    7 14 21 28 35 42 49 56 63 70 
    8 16 24 32 40 48 56 64 72 80 
    9 18 27 36 45 54 63 72 81 90 
    10 20 30 40 50 60 70 80 90 100 
    4 bên ngoài, vòng lặp
    1 2 3 4 5 6 7 8 9 10 
    2 4 6 8 10 12 14 16 18 20 
    3 6 9 12 15 18 21 24 27 30 
    4 8 12 16 20 24 28 32 36 40 
    5 10 15 20 25 30 35 40 45 50 
    6 12 18 24 30 36 42 48 54 60 
    7 14 21 28 35 42 49 56 63 70 
    8 16 24 32 40 48 56 64 72 80 
    9 18 27 36 45 54 63 72 81 90 
    10 20 30 40 50 60 70 80 90 100 
    3 bên trong thực hiện từ 1 đến số bên ngoài hiện tại để kiểm tra xem số hiện tại có phải là số hoàn hảo hay không
1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
0

Khi nào nên sử dụng Vòng lặp lồng nhau trong Python?

  • Các vòng lặp lồng nhau rất hữu ích khi bạn có các mảng hoặc danh sách lồng nhau cần được lặp qua cùng một chức năng
  • Khi bạn muốn in các mẫu sao và số khác nhau bằng cách sử dụng các hàng có thể các cột

Lưu ý đến sự phức tạp về thời gian. Hãy hiểu điều này với các ví dụ về cách hoạt động của vòng lặp lồng nhau trong Python

Chúng tôi sử dụng vòng lặp for để lặp lại trên các phần tử đã cho của một chuỗi hoặc có thể lặp lại. như

// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}
47. Ở đây độ phức tạp của thời gian là O[n] vì chúng tôi đang lặp lại tất cả các mục từ danh sách

Số bước thực hiện [lặp đi lặp lại] xác định độ phức tạp về thời gian của một vòng lặp

Khi bạn sử dụng một vòng lặp lồng nhau và cả vòng lặp bên ngoài lẫn bên trong đều chạy mà không có bất kỳ điều kiện if nào trong đó, độ phức tạp về thời gian là

// This is Pseudo Code
// Loop 3 Times
for [i = 0; i & lt; = 3; i++] {
    // Read data from Excel and store into variables
    int input_1 = ReadExcel[i, 0];
    int input_2 = ReadExcel[i, 1];

    // Test Step 1: Launch Application
    driver.get["URL of the Application"];

    // Test Step 2: Enter Username
    txtbox_username.sendKeys[input_1];
    // Test Step 3: Enter Password

    txtbox_password.sendKeys[input_2];
    // Test Step 4: Check Results
    If[Next Screen] print success
    else Fail
}
48 bởi vì, đối với tất cả n phần tử, mã được thực thi n lần

Thí dụ

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
1

đầu ra

1 2 3 4 5 6 7 8 9 10 
2 4 6 8 10 12 14 16 18 20 
3 6 9 12 15 18 21 24 27 30 
4 8 12 16 20 24 28 32 36 40 
5 10 15 20 25 30 35 40 45 50 
6 12 18 24 30 36 42 48 54 60 
7 14 21 28 35 42 49 56 63 70 
8 16 24 32 40 48 56 64 72 80 
9 18 27 36 45 54 63 72 81 90 
10 20 30 40 50 60 70 80 90 100 
2

Nếu bạn đưa ra một điều kiện trong vòng lặp bên trong sẽ dừng thực hiện sau một số phần tử và không thực hiện hết n lần lặp của vòng lặp bên trong hoặc vòng lặp bên ngoài, nó sẽ ít phức tạp hơn về thời gian

Sử dụng vòng lặp lồng nhau khi bạn không có lựa chọn thay thế nào tốt hơn, Hãy nhớ rằng viết mã hiệu quả và nhỏ gọn tốt hơn nhiều so với viết mã phức tạp

3 loại vòng lặp trong Python là gì?

Loại vòng lặp .
cho vòng lặp. Vòng lặp for trong Python được sử dụng để lặp qua một chuỗi [danh sách, bộ dữ liệu, bộ, từ điển và chuỗi]. Sơ đồ. .
Trong khi lặp lại. Vòng lặp while được sử dụng để thực thi một tập hợp các câu lệnh miễn là một điều kiện là đúng. .
Vòng lặp lồng nhau. Nếu một vòng lặp tồn tại bên trong phần thân của một vòng lặp khác, nó được gọi là vòng lặp lồng nhau

Có bao nhiêu loại vòng lặp trong Python?

hai loại vòng lặp trong Python, for và while.

Đầu vào [] trong Python là gì?

Trong Python, chúng ta sử dụng hàm input[] để lấy đầu vào từ người dùng . Bất cứ điều gì bạn nhập làm đầu vào, hàm nhập sẽ chuyển đổi nó thành một chuỗi. Nếu bạn nhập một giá trị số nguyên thì hàm input[] vẫn chuyển đổi nó thành một chuỗi. cú pháp. đầu vào [dấu nhắc]

Bạn có thể đặt đầu vào [] trong vòng lặp while Python không?

Nhận đầu vào của người dùng trong vòng lặp while. Sử dụng vòng lặp while để lặp cho đến khi thỏa mãn điều kiện. Sử dụng hàm input[] để nhận đầu vào của người dùng . Nếu điều kiện được đáp ứng, thoát ra khỏi vòng lặp while.

Chủ Đề