Viết chương trình Python để tìm tổng các mục mảng numpy. Hàm tổng numpy trả về tổng của tất cả các mục mảng. Chúng tôi sử dụng hàm tổng này trên một mảng số nguyên
import numpy as np arr = np.array[[10, 20, 40, 70, 90]] total = sum[arr] print["The Sum of Total Array Item = ", total]
Tổng các mục Python Numpy Array sử dụng đầu ra hàm tổng
The Sum of Total Array Item = 230
Nó cho phép người dùng nhập kích thước ndarray gọn gàng và các mục. Tiếp theo, chúng tôi đã sử dụng hàm numpy sum để lấy tổng của các mục mảng đó
import numpy as np arrSumList = [] number = int[input["Enter the Total Array Items = "]] for i in range[1, number + 1]: value = int[input["Enter the %d Array value = " %i]] arrSumList.append[value] intarrSum = np.array[arrSumList] total = sum[intarrSum] print["The Sum of Total Array Item = ", total]
Đầu ra tổng của các mục Numpy Array
Enter the Total Array Items = 4
Enter the 1 Array value = 20
Enter the 2 Array value = 5090
Enter the 3 Array value = 20
Enter the 4 Array value = 54
The Sum of Total Array Item = 5184
Chương trình Python để tìm tổng của mảng Numpy bằng cách sử dụng phạm vi vòng lặp
Trong vòng lặp for này [for i in range[len[sumArr]]], i lặp giá trị từ vị trí chỉ mục mảng 0 đến độ dài của sumArr này. Trong vòng lặp for này, chúng tôi sẽ thêm từng mục vào tổng số [total = total + sumArr[I]]
import numpy as np sumArr = np.array[[10, 60, 30, 40, 70, 95]] total = 0 for i in range[len[sumArr]]: total = total + sumArr[i] print["The Sum of Total Array Item = ", total]
The Sum of Total Array Item = 305
Trong ví dụ gọn gàng này, vòng lặp for [cho num in sumArr] lặp lại các mục mảng thực tế, không phải vị trí chỉ mục và thêm các mục đó
Tìm tổng các phần tử danh sách trong python
A danh sách python là tập hợp các phần tử có kiểu dữ liệu giống nhau hoặc khác nhau.
Giả sử bạn có một danh sách các số và bạn muốn tìm tổng tất cả các phần tử của danh sách
Bài viết này sẽ trình bày chi tiết các cách khác nhau để thực hiện điều này
Phương pháp này dựa trên thuật toán dưới đây
1. Khởi tạo một biến để giữ tổng của phần tử
2. Lặp lại danh sách bằng vòng lặp for và truy xuất từng phần tử của danh sách
3. Thêm phần tử này vào biến được khởi tạo ở trên
4. Sau khi lặp lại danh sách hoàn tất, biến của Bước 1 sẽ giữ tổng của các phần tử danh sách
Chương trình Python được viết theo thuật toán trên như sau
# initialize a list of integers num_list = [1, 5, 4, 45, 12] # initialize variable to hold the sum of list elements total = 0 # iterate over the list for num in num_list: # add current list element to the sum total = total + num print["Sum of elements of list is", total]
Nó tạo ra đầu ra sau
Tổng các phần tử của danh sách là 67
Phương pháp 2 . Lặp lại danh sách bằng vòng lặp while
Phương pháp này giống như phương pháp trước nhưng nó sử dụng vòng lặp while
thay vì vòng lặp for
Thuật toán cho phương pháp này sẽ bao gồm các bước sau
1. Khởi tạo một biến để giữ tổng các phần tử danh sách
2. Khởi tạo một biến để giữ chỉ số vòng lặp
3. Khởi tạo một biến để giữ số phần tử danh sách
Biến này và biến từ bước trước sẽ được sử dụng để lặp qua danh sách
4. Lặp lại danh sách bằng vòng lặp while
cho đến khi giá trị của biến ở bước 2 nhỏ hơn giá trị của biến ở bước 3
5. Trong mỗi lần lặp lại, hãy thêm phần tử tại chỉ số vòng lặp hiện tại [giá trị của biến ở bước 2] vào tổng [biến của bước 1]
6. Tăng chỉ số vòng lặp lên 1
7. Sau khi vòng lặp kết thúc, biến ở bước 1 sẽ giữ tổng của các phần tử danh sách
Mã được viết theo thuật toán trên như sau
# initialize a list of integers num_list = [1, 5, 4, 45, 12] # initialize variable to hold the sum of list elements total = 0 # number of elements in list list_size = len[num_list] # variable to keep track of loop loop_counter = 0 # iterate over the list while loop_counter < list_size: # add current list element to the sum total = total + num_list[loop_counter] # increment loop index loop_counter = loop_counter + 1 print["Sum of elements of list is", total]
Đầu ra của chương trình trên là
Tổng các phần tử của danh sách là 67
Phương pháp 3 . Sử dụng hàm tính tổng
Python cung cấp một hàm tích hợp sẵn sum
lấy một đối tượng có thể được lặp lại [chẳng hạn như danh sách] và trả về tổng giá trị có trong đối tượng này
Tài liệu Python cho trạng thái hàm tổng
Trả về tổng của giá trị 'bắt đầu' [mặc định. 0] cộng với một số lặp lại
Chương trình hiển thị cách sử dụng chức năng này được hiển thị bên dưới
________số 8_______Đầu ra của chương trình trên là
Tổng các phần tử danh sách là 67
Phương pháp 4 . Sử dụng phương pháp đệ quy 1
Một phương thức đệ quy là một phương thức tiếp tục gọi chính nó cho đến khi một số điều kiện được đáp ứng
Nó có thể hoặc không thể trả về kết quả
Cũng cần phải viết một điều kiện trong phương thức đệ quy khiến nó quay trở lại nếu không nó sẽ tiếp tục gọi chính nó vô tận
Mã bên dưới hiển thị một ví dụ về phương thức đệ quy
# initialize a list of integers num_list = [1, 5, 4, 45, 12] # recursive method to calculate the sum of list elements def recursive[num_list, list_size]: # check if list is empty, return 0 if list_size == 0: return 0 # add last element with other list elements return num_list[list_size-1] + recursive[num_list, list_size - 1] total = recursive[num_list, len[num_list]] print["Sum of list elements is", total]
Đoạn mã trên định nghĩa một phương thức đệ quy để tính tổng các mục trong danh sách. Phải mất 2 đối số, danh sách có các phần tử cần được thêm vào và kích thước của danh sách
Phương thức truy xuất phần tử cuối cùng của danh sách bằng cách trừ 1 từ kích thước của danh sách và gọi lại chính nó với kích thước danh sách giảm đi 1
Trong mọi cuộc gọi, nó thêm phần tử danh sách cuối cùng với kết quả của cuộc gọi đệ quy của nó
Bằng cách này, với mỗi phần tử danh sách cuộc gọi đệ quy được thêm vào [bắt đầu từ phần tử cuối cùng đến phần tử đầu tiên] và kích thước danh sách giảm đi 1
Khi kích thước danh sách đạt đến 0, cuộc gọi đệ quy cuối cùng kết thúc bằng cách trả về 0 và phương thức trả về tổng của các phần tử danh sách
Đầu ra là
Tổng các phần tử danh sách là 67
Phương pháp 5 . Sử dụng phương pháp đệ quy 2
Phương pháp này là một phương án đệ quy khác để tính tổng các phần tử danh sách
Phương thức này chỉ nhận một đối số là danh sách có các phần tử sẽ được thêm vào
Trong mọi lời gọi, nó trả về tổng của phần tử đầu tiên và kết quả của lời gọi đệ quy với phần tử đầu tiên bị xóa khỏi danh sách
Do đó, trong mọi cuộc gọi, kích thước [hoặc độ dài] của danh sách nhận được dưới dạng đối số sẽ giảm đi 1
Trong mọi cuộc gọi, phương thức này sẽ kiểm tra độ dài của danh sách
Khi độ dài đạt đến 1, nó trả về phần tử đầu tiên. Do đó, với mỗi phần tử danh sách cuộc gọi đệ quy được thêm vào [bắt đầu từ phần tử đầu tiên cho đến phần tử cuối cùng]
Để xóa phần tử đầu tiên, nó sử dụng toán tử cắt lát [:
]
Biểu thức
# initialize a list of integers num_list = [1, 5, 4, 45, 12] # initialize variable to hold the sum of list elements total = 0 # number of elements in list list_size = len[num_list] # variable to keep track of loop loop_counter = 0 # iterate over the list while loop_counter < list_size: # add current list element to the sum total = total + num_list[loop_counter] # increment loop index loop_counter = loop_counter + 1 print["Sum of elements of list is", total]0 có nghĩa là tất cả các phần tử danh sách bắt đầu từ phần tử ở chỉ số 1 [phần tử thứ hai] do chỉ mục của các phần tử trong danh sách bắt đầu từ 0
Mã ví dụ sau
# initialize a list of integers num_list = [1, 5, 4, 45, 12] def recursive[num_list]: # check if there is only 1 element in the list, return it if len[num_list] == 1: return num_list[0] # add first element with other list elements return num_list[0] + recursive[num_list[1:]] total = recursive[num_list] print["Sum of list elements is", total]
Đầu ra của đoạn mã trên là
Tổng các phần tử danh sách là 67
Bài đăng này liệt kê ra các phương pháp khác nhau có thể được sử dụng để tính tổng các phần tử danh sách
Hy vọng nó đã giúp bạn trong việc tìm hiểu chúng
Thích bài viết?
Bài viết này có 2 bình luận
Ẩn danh 7 tháng 1 năm 2022
Cách 1, dòng 9, tổng nên được thay thế bằng biến “total”
codippa 8 tháng 1 năm 2022
Đúng. đúng rồi
Đã sửa, cảm ơn