Hướng dẫn while loop menu python - Python menu vòng lặp trong khi

  • If I choose 1 for the first time, and then choose 1 again for the second time,choose 1 for the first time, and then choose 1 again for the second time,
  • and then choose 2 on the second menu to return back to the first menuchoose 2 on the second menu to return back to the first menu
  • and I choose quit but it will show second menu again.choose quit but it will show second menu again.
  • I have to choose 2 for three times then the program will close.choose 2 for three times then the program will close.

It must be something wrong with my while loop but I cannot find it :(

def menu(): # first menu
    print('+----------------------------+')
    print('|        first menu here     |')
    print('+----------------------------+')
    print('|choose [1]                  |')
    print('+----------------------------+')
    print('|choose [2] to quit          |')
    print('+----------------------------+')
    return input('>> ')

def s_menu(): # second menu
    print('+**********************************+')
    print('|       second menu here           |')
    print('+**********************************+')
    print('|choose [1] to continue            |')
    print('+**********************************+')
    print('|choose [2] to back first menu     |')
    print('+**********************************+')
    return input('>> ')

def doSomething():
    print('Something here')

    second_while()  # declare second s_menu() here

def second_while(): # loop second s_menu()
    while True:
        resp = s_menu()
        if resp == '1':
            doSomething()
        elif resp == '2':
            menu()
            break
        else:
            print('Wrong input!')
        #break  # if break was here, wrong user input will close terminal immediately


# loop first menu()
while True:
    inp = menu()
    if inp == '1':
        doSomething()
    elif inp == '2':
        print('Break')
        break
    else:
        print('Wrong input!')
    #break  # if break was here, wrong user input will close terminal immediately

asked Aug 18, 2020 at 1:40Aug 18, 2020 at 1:40

Hướng dẫn while loop menu python - Python menu vòng lặp trong khi

Change

def doSomething():
    print('Something here')

    second_while()  # declare second s_menu() here

to

def doSomething():
    print('Something here')

Otherwise every time you call

[[1,2,3],[4,5,6],[7,8,9]]
3, you go 1 layer of
[[1,2,3],[4,5,6],[7,8,9]]
4 deeper, and will need to press 2 one more time to exit all of them.2 one more time to exit all of them.

answered Aug 18, 2020 at 1:47Aug 18, 2020 at 1:47

JasmijnJasmijnJasmijn

8,4802 gold badges27 silver badges42 bronze badges2 gold badges27 silver badges42 bronze badges

2

ok, I have found the solution for my answer. While loop inside the while loop

# loop first menu()
while True:
    menu()
    inp = input('>> ')
    if inp == '1':
        doSomething()
        # loop doSomething()
        while True:
            resp = input('>> ')
            if resp == '1':
                doSomething()
            elif resp == '2':
                break
            else:
                print('Wrong input')
    elif inp == '2':
        print('Break')
        break
    else:
        print('Wrong input!')

answered Aug 18, 2020 at 2:44Aug 18, 2020 at 2:44

Hướng dẫn while loop menu python - Python menu vòng lặp trong khi

Vì vậy, tôi đang nghĩ đến việc tạo ra một mảng 2D trong đó hàng đại diện cho tên thành phố (tất nhiên là trong số nguyên) và cột đại diện cho nhiệt độ.

Nội dung chính ShowShow

  • 1. Danh sách lồng nhau: Xử lý và in ấn
  • 2. Danh sách lồng nhau: Tạo
  • 3. Làm thế nào để bạn nhập một mảng hai chiều?
  • 3. Làm thế nào để bạn nhập một mảng hai chiều?
  • 3. Làm thế nào để bạn nhập một mảng hai chiều?
  • Làm thế nào để bạn lặp lại một mảng 2D trong Python?
  • Làm thế nào để bạn lặp lại một mảng trong Python?
  • Làm thế nào để bạn thêm vào danh sách 2D trong Python?
  • Làm thế nào để bạn tạo ra một mảng 2 chiều numpy?

days = int(input("Enter days: "))
city = int(input("Enter city: "))
array = [[0]* days]*city
i = 0

Tạo một mảng hai chiều Nếu bạn chỉ sử dụng hàm Arange, nó sẽ xuất ra một mảng một chiều.Để biến nó thành một mảng hai chiều, chuỗi đầu ra của nó với chức năng định hình lại.Đầu tiên, 20 số nguyên sẽ được tạo và sau đó nó sẽ chuyển đổi mảng thành một mảng hai chiều với 4 hàng và 5 cột.chain its output with the reshape function. First, 20 integers will be created and then it will convert the array into a two-dimensional array with 4 rows and 5 columns.

days = 3
city = 3

Vì vậy, tôi đang nghĩ đến việc tạo ra một mảng 2D trong đó hàng đại diện cho tên thành phố (tất nhiên là trong số nguyên) và cột đại diện cho nhiệt độ.

[[0,0,0],[0,0,0],[0,0,0]]

Nội dung chính Show

1. Danh sách lồng nhau: Xử lý và in ấn

while i

2. Danh sách lồng nhau: Tạo

array = [1,2,3]

3. Làm thế nào để bạn nhập một mảng hai chiều?

[[1,2,3],[4,5,6],[7,8,9]]

Làm thế nào để bạn lặp lại một mảng 2D trong Python?

  • In mảng bằng đầu vào:
  • Cho tôi một cái gì đó như:
  • Nhưng vấn đề tôi đang gặp phải là, làm thế nào để chèn các giá trị vào mảng?

1. Danh sách lồng nhau: Xử lý và in ấn

2. Danh sách lồng nhau: Tạo

def doSomething():
    print('Something here')

    second_while()  # declare second s_menu() here
0

3. Làm thế nào để bạn nhập một mảng hai chiều?

Làm thế nào để bạn lặp lại một mảng 2D trong Python?

In mảng bằng đầu vào:

def doSomething():
    print('Something here')
0

Cho tôi một cái gì đó như:

Nhưng vấn đề tôi đang gặp phải là, làm thế nào để chèn các giá trị vào mảng?

Khi tôi đang làm việc trên mảng 1D, tôi đã sử dụng:

array = [1,2,3]
3:
def doSomething():
    print('Something here')
5

trong đó chèn nhiệt độ vào mảng.

days = 3
city = 3
0

Nhưng bây giờ nó là 2D, tôi dường như không thể tìm ra nó. Các hàng bây giờ đại diện cho thành phố và cột đại diện cho nhiệt độ. Tôi muốn có một cái gì đó giống như.

Làm thế nào tôi sẽ sửa đổi vòng lặp trong khi để thực hiện các mảng 2D?

Học thuyết

2. Danh sách lồng nhau: Tạo

3. Làm thế nào để bạn nhập một mảng hai chiều?

Làm thế nào để bạn lặp lại một mảng 2D trong Python?

In mảng bằng đầu vào:

days = 3
city = 3
2

Cho tôi một cái gì đó như:

Nhưng vấn đề tôi đang gặp phải là, làm thế nào để chèn các giá trị vào mảng?

Sử dụng trình hiển thị của chúng tôi, hãy theo dõi ID của danh sách. Nếu hai danh sách có cùng một số ID, thì thực tế thì cùng một danh sách trong bộ nhớ.

days = 3
city = 3
3

Do đó, một danh sách hai chiều không thể được tạo đơn giản bằng cách lặp lại một chuỗi. Làm gì? ..

Một cách có thể: bạn có thể tạo một danh sách các yếu tố

array = [1,2,3]
6 (giả sử,
array = [1,2,3]
6 Zeros) và sau đó biến mỗi phần tử thành một liên kết đến một danh sách một chiều khác của các yếu tố
array = [1,2,3]
7:
days = 3
city = 3
4

Một cách khác (nhưng tương tự): Tạo một danh sách trống và sau đó

def doSomething():
    print('Something here')

    second_while()  # declare second s_menu() here
00 một yếu tố mới cho nó
array = [1,2,3]
6 lần (phần tử này phải là danh sách độ dài
array = [1,2,3]
7):
days = 3
city = 3
5

Nhưng cách dễ nhất là sử dụng Trình tạo, tạo danh sách các yếu tố

array = [1,2,3]
6, mỗi phần tử là danh sách các số không
array = [1,2,3]
7:
days = 3
city = 3
6

Trong trường hợp này, mỗi yếu tố được tạo độc lập với các yếu tố khác. Danh sách

[[1,2,3],[4,5,6],[7,8,9]]
3 là
array = [1,2,3]
6 lần được cung cấp là cái mới và không có sao chép tài liệu tham khảo nào xảy ra.

Quảng cáo của Google, có thể dựa trên sở thích của bạn

3. Làm thế nào để bạn nhập một mảng hai chiều?

Giả sử, một chương trình đảm nhận mảng hai chiều đầu vào dưới dạng các hàng

array = [1,2,3]
6, mỗi hàng chứa các số
array = [1,2,3]
7 được phân tách bằng không gian. Làm thế nào để bạn buộc chương trình đọc nó? Một ví dụ về cách bạn có thể làm điều đó:
days = 3
city = 3
7

Hoặc, mà không sử dụng các cuộc gọi lồng nhau tinh vi:

days = 3
city = 3
8

Bạn có thể làm tương tự với các máy phát điện:

days = 3
city = 3
9

Quảng cáo của Google, có thể dựa trên sở thích của bạn

3. Làm thế nào để bạn nhập một mảng hai chiều?

Giả sử, một chương trình đảm nhận mảng hai chiều đầu vào dưới dạng các hàng

array = [1,2,3]
6, mỗi hàng chứa các số
array = [1,2,3]
7 được phân tách bằng không gian. Làm thế nào để bạn buộc chương trình đọc nó? Một ví dụ về cách bạn có thể làm điều đó:
days = 3
city = 3
7

Hoặc, mà không sử dụng các cuộc gọi lồng nhau tinh vi:

Bạn có thể làm tương tự với các máy phát điện:

[[0,0,0],[0,0,0],[0,0,0]]
1

array = [1,2,3]
6, mỗi hàng chứa các số
array = [1,2,3]
7 được phân tách bằng không gian. Làm thế nào để bạn buộc chương trình đọc nó? Một ví dụ về cách bạn có thể làm điều đó:
[[0,0,0],[0,0,0],[0,0,0]]
0

4. Xử lý một mảng hai chiều: một ví dụ

Giả sử bạn được cung cấp một mảng vuông (một mảng gồm các hàng

array = [1,2,3]
6 và cột
array = [1,2,3]
6). Và giả sử bạn phải đặt các phần tử của đường chéo chính bằng 1 (nghĩa là các phần tử
def doSomething():
    print('Something here')
01 mà
def doSomething():
    print('Something here')
02), để đặt các phần tử trên so với đường chéo bằng 0 và để đặt các phần tử bên dưới đường chéo bằng 2. đó là , bạn cần tạo ra một mảng như vậy (ví dụ cho
def doSomething():
    print('Something here')
03):
[[0,0,0],[0,0,0],[0,0,0]]
2

[[0,0,0],[0,0,0],[0,0,0]]
3

.

Chúng tôi rất háo hức chỉ cho bạn một số cách để giải quyết vấn đề này. Đầu tiên, lưu ý rằng các yếu tố nằm trên đường chéo chính & nbsp; - là các yếu tố

def doSomething():
    print('Something here')
01 mà
def doSomething():
    print('Something here')
07 và đối với các phần tử dưới đường chéo chính
def doSomething():
    print('Something here')
08. Do đó, chúng ta có thể so sánh các giá trị
array = [1,2,3]
4 và
array = [1,2,3]
5, xác định giá trị của
def doSomething():
    print('Something here')
01. Chúng tôi nhận được thuật toán sau:
[[0,0,0],[0,0,0],[0,0,0]]
4

Thuật toán này chậm: Nó sử dụng hai vòng và cho mỗi cặp

def doSomething():
    print('Something here')
32 thực thi một hoặc hai hướng dẫn
def doSomething():
    print('Something here')
33. Nếu chúng ta làm phức tạp thuật toán, chúng ta sẽ có thể làm điều đó mà không cần một tuyên bố có điều kiện.
[[0,0,0],[0,0,0],[0,0,0]]
5

[[0,0,0],[0,0,0],[0,0,0]]
6

Đầu tiên, hãy điền vào đường chéo chính mà chúng ta sẽ cần một vòng lặp:

Sau đó điền vào số 0 tất cả các phần tử phía trên đường chéo chính. Để thực hiện điều này, với mỗi hàng với số

Quảng cáo của Google, có thể dựa trên sở thích của bạn

3. Làm thế nào để bạn nhập một mảng hai chiều?

Giả sử, một chương trình đảm nhận mảng hai chiều đầu vào dưới dạng các hàng

array = [1,2,3]
6, mỗi hàng chứa các số
array = [1,2,3]
7 được phân tách bằng không gian. Làm thế nào để bạn buộc chương trình đọc nó? Một ví dụ về cách bạn có thể làm điều đó:
days = 3
city = 3
7

Bạn có thể làm tương tự với các máy phát điện:

[[0,0,0],[0,0,0],[0,0,0]]
9

array = [1,2,3]
6, mỗi hàng chứa các số
array = [1,2,3]
7 được phân tách bằng không gian. Làm thế nào để bạn buộc chương trình đọc nó? Một ví dụ về cách bạn có thể làm điều đó:
[[0,0,0],[0,0,0],[0,0,0]]
0

4. Xử lý một mảng hai chiều: một ví dụ

Giả sử bạn được cung cấp một mảng vuông (một mảng gồm các hàng

array = [1,2,3]
6 và cột
array = [1,2,3]
6). Và giả sử bạn phải đặt các phần tử của đường chéo chính bằng 1 (nghĩa là các phần tử
def doSomething():
    print('Something here')
01 mà
def doSomething():
    print('Something here')
02), để đặt các phần tử trên so với đường chéo bằng 0 và để đặt các phần tử bên dưới đường chéo bằng 2. đó là , bạn cần tạo ra một mảng như vậy (ví dụ cho
def doSomething():
    print('Something here')
03):
[[0,0,0],[0,0,0],[0,0,0]]
2

.

while i
1

Quảng cáo của Google, có thể dựa trên sở thích của bạn

3. Làm thế nào để bạn nhập một mảng hai chiều?

Giả sử, một chương trình đảm nhận mảng hai chiều đầu vào dưới dạng các hàng using a for a loop. We can iterate through the outer array first, and then at each element of the outer array, we have another array, our inner array containing the elements. So for each inner array, we run a loop to traverse its elements.

Làm thế nào để bạn lặp lại một mảng trong Python?

Làm thế nào để tôi lặp lại thông qua một mảng chuỗi trong Python ?...

Sử dụng vòng lặp cho chức năng phạm vi ..

Sử dụng vòng lặp trong khi ..

Sử dụng phương pháp hiểu ..

Sử dụng phương pháp liệt kê ..

Sử dụng Enumerate và định dạng đầu ra ..

Làm thế nào để bạn thêm vào danh sách 2D trong Python?

Nối một phần tử vào danh sách 2D.Sử dụng cú pháp lập chỉ mục danh sách A_2D_List [x] để lấy danh sách lồng nhau tại Index X trong danh sách 2D.Danh sách cuộc gọi.Phụ lục (đối tượng) với danh sách lồng nhau này là danh sách và phần tử mong muốn là đối tượng để nối một phần tử vào danh sách lồng nhau.Use the list indexing syntax a_2d_list[x] to get the nested list at index x in a 2D list. Call list. append(object) with this nested list as list and the desired element as object to append an element to the nested list.Use the list indexing syntax a_2d_list[x] to get the nested list at index x in a 2D list. Call list. append(object) with this nested list as list and the desired element as object to append an element to the nested list.

Làm thế nào để bạn tạo ra một mảng 2 chiều numpy?

Tạo một mảng hai chiều Nếu bạn chỉ sử dụng hàm Arange, nó sẽ xuất ra một mảng một chiều.Để biến nó thành một mảng hai chiều, chuỗi đầu ra của nó với chức năng định hình lại.Đầu tiên, 20 số nguyên sẽ được tạo và sau đó nó sẽ chuyển đổi mảng thành một mảng hai chiều với 4 hàng và 5 cột.chain its output with the reshape function. First, 20 integers will be created and then it will convert the array into a two-dimensional array with 4 rows and 5 columns.chain its output with the reshape function. First, 20 integers will be created and then it will convert the array into a two-dimensional array with 4 rows and 5 columns.