Python nhân danh sách các bộ dữ liệu

Nếu bạn đang làm việc với Python, có nhiều tình huống mà người ta phải tìm các sản phẩm theo chỉ mục của hai danh sách. Hãy xem cách nhân danh sách trong Python bằng các cách tiếp cận khác nhau

Python nhân danh sách

Để nhân một danh sách trong Python, hãy sử dụng hàm zip[]. Zip[] là một hàm Python tích hợp để tạo một trình lặp sẽ tổng hợp các phần tử từ hai hoặc nhiều lần lặp

Bạn cần chuyển các danh sách vào hàm zip[*iterables] để nhận danh sách các bộ dữ liệu ghép nối các phần tử có cùng vị trí từ cả hai danh sách

listA = [1, 2, 3]
listB = [4, 5, 6]
products = []


for dt1, dt2 in zip[listA, listB]:
    products.append[dt1 * dt2]

print[products]

đầu ra

[4, 10, 18]

Trong ví dụ này, đầu tiên, chúng tôi xác định hai danh sách. Sau đó, cả hai danh sách được chuyển vào phương thức zip[] để lấy danh sách các bộ dữ liệu ghép nối các phần tử có cùng vị trí từ cả hai danh sách

Sử dụng vòng lặp for để nhân các phần tử này và nối chúng vào danh sách mới

Sử dụng khả năng hiểu danh sách để nhân danh sách

Khả năng hiểu danh sách cho phép cú pháp ngắn hơn khi bạn muốn tạo danh sách mới dựa trên các giá trị của danh sách hiện có. Nếu không hiểu danh sách, bạn sẽ phải viết một vòng lặp for có kiểm tra điều kiện bên trong, như chúng ta đã thấy trong ví dụ của phần trên

Bạn có thể sử dụng khả năng hiểu danh sách để nhân danh sách trong Python. Đầu tiên, khởi tạo giá trị của sản phẩm thành 1 [không phải 0 bằng 0 nhân với bất kỳ giá trị nào trả về 0]. Sau đó, duyệt đến cuối danh sách và nhân mỗi số với tích

Các bộ dữ liệu rất giống danh sách và đó là lý do tại sao chúng ta có thể định nghĩa chúng theo cách tương tự như chúng ta đã làm để xác định danh sách. Nói một cách đơn giản, một bộ là một chuỗi dữ liệu

Điều khiến chúng khác với danh sách là các bộ dữ liệu là bất biến, tôi. e. , không thể sửa đổi dữ liệu bên trong các bộ dữ liệu, điều này ngược lại trong trường hợp danh sách. Ngoài điều này, các bộ dữ liệu rất giống với danh sách và điều đó sẽ giúp chúng ta dễ hiểu hơn nhiều vì chúng ta đã biết về danh sách. Nếu không, chúng tôi khuyên bạn trước tiên nên xem qua hướng dẫn về Danh sách

Định nghĩa một Tuple

Để xác định một Tuple, chúng ta chỉ cần gán một biến duy nhất có nhiều giá trị được phân tách bằng dấu phẩy và biến đó sẽ được gọi là Tuple

>>> myTuple = 1, 2, 3, 4

Nếu bạn cố in nó trong IDLE,

>>> print [myTuple];

[1, 2, 3, 4]

Bạn có thể thấy trong ví dụ trên, biến

>>> print [myTuple];
6 thực chất là tập hợp các số nguyên 1, 2, 3 và 4. Ngoài ra, hãy lưu ý những dấu ngoặc tròn xuất hiện trong khi in, xung quanh các số nguyên, những dấu ngoặc tròn này thực sự sẽ giúp bạn phân biệt giữa danh sách và bộ dữ liệu. Bởi vì trong trường hợp danh sách, chúng tôi có dấu ngoặc vuông xung quanh các phần tử danh sách

Rõ ràng bạn có thể thêm dữ liệu thuộc các loại khác nhau trong một bộ dữ liệu duy nhất,

>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];

[1, 2, "con trăn", 4]

Một bộ dữ liệu trống có thể được tạo bằng cách sử dụng hàm

>>> print [myTuple];
7 hoặc chỉ bằng cách sử dụng dấu ngoặc trống
>>> print [myTuple];
8

________số 8_______

Các câu lệnh trên sẽ tạo ra các bộ dữ liệu không có phần tử nào trong đó. Và trình biên dịch sẽ biết rằng

>>> print [myTuple];
9 và
>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
0 là các bộ dữ liệu, không có phần tử nào trong đó

Lập chỉ mục trong Tuples

Lập chỉ mục trong bộ cũng khá giống với trong danh sách, phần tử đầu tiên có chỉ số bằng 0 và nó tiếp tục tăng cho các phần tử liên tiếp tiếp theo. Ngoài ra, lập chỉ mục ngược cũng hợp lệ trong các bộ dữ liệu, tôi. e. , phần tử cuối cùng có thể được truy cập bằng cách sử dụng chỉ mục

>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
1 và các số liền trước bởi
>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
2,
>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
3, v.v. Hãy lấy một ví dụ,

>>> example = "apple", "orange", "banana", "berry", "mango"
>>> print [example[0]];

'táo'

Trong bảng bên dưới, chúng tôi đã đánh dấu các phần tử bộ cho cả lập chỉ mục tiến và lùi

ValueForward IndexingBackward Indexingapple0-5orange1-4banana2-3berry3-2mango4-1

Thêm phần tử vào Tuple

Như chúng ta biết, các bộ dữ liệu đó là bất biến, do đó dữ liệu được lưu trữ trong một bộ dữ liệu không thể chỉnh sửa được, nhưng chắc chắn có thể thêm nhiều dữ liệu hơn vào một bộ dữ liệu. Điều này có thể được thực hiện bằng cách sử dụng toán tử bổ sung. Giả sử có một tuple,

>>> t = [1, 2, 3, 4, 5]

Trong trường hợp bạn muốn thêm một phần tử khác là

>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
4 vào bộ thì bạn có thể làm như sau

>>> t = t + [7,]

Như bạn có thể thấy, chúng tôi đã sử dụng toán tử cộng để

>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
5 cho bộ dữ liệu
>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
6

>>> print [t];

[1, 2, 3, 4, 5, 7]

Do đó, chúng ta có thể thêm bất kỳ loại phần tử nào vào một bộ, sử dụng toán tử

>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
7

Nếu chúng ta thử suy nghĩ, chúng ta có thể làm gì khác với toán tử

>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
7, chúng ta có thể nhận ra rằng nó cũng có thể được sử dụng để kết hợp hai bộ dữ liệu. Ví dụ

>>> print [[1, 2, 5, 8] + [2, 9, 4]];

[1, 2, 5, 8, 2, 9, 4]

Bạn có thể sử dụng [các] bộ để tạo một bộ khác

Xóa một Tuple

Để xóa một tuple, từ khóa

>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
9 được sử dụng. Để xóa một bộ có tên
>>> print [myTuple];
6[mà chúng tôi đã xác định trước đó], hãy làm theo ví dụ bên dưới

>>> del [myTuple];

>>> print [myTuple];
6 sẽ bị xóa khỏi bộ nhớ

Cắt lát trong Tuples

Cắt theo bộ, hoạt động giống hệt như trong trường hợp danh sách. Hãy bắt đầu với một ví dụ

>>> print [myTuple];
0

[3, 4]

Ở đây,

>>> emptyTuple = [];
>>> anotherEmptyTuple = tuple[];
2 có nghĩa là, cắt bộ dữ liệu bắt đầu từ chỉ mục
>>> emptyTuple = [];
>>> anotherEmptyTuple = tuple[];
3 cho đến chỉ mục
>>> emptyTuple = [];
>>> anotherEmptyTuple = tuple[];
4 và lấy phần đó ra

Việc cắt lát cũng có thể được thực hiện ngược lại bằng cách sử dụng các chỉ số âm để duyệt qua bộ dữ liệu từ hướng ngược lại

Hoạt động và chức năng cơ bản

Các hoạt động khác nhau mà chúng ta có thể thực hiện trên các bộ dữ liệu rất giống với danh sách. Trên thực tế, bạn vừa thấy toán tử

>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
7 với các bộ dữ liệu, nó hoạt động với các bộ dữ liệu giống như nó hoạt động với một danh sách. Một số toán tử khác cho bộ dữ liệu bao gồm


Phép nhân

Nhân một bộ với bất kỳ số nguyên nào, x sẽ chỉ tạo một bộ khác với tất cả các phần tử từ bộ đầu tiên được lặp lại x số lần. Ví dụ,

>>> emptyTuple = [];
>>> anotherEmptyTuple = tuple[];
6 có nghĩa là các phần tử của bộ
>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
6 sẽ được lặp lại
>>> emptyTuple = [];
>>> anotherEmptyTuple = tuple[];
8 lần

>>> print [myTuple];
1

[2, 5, 2, 5, 2, 5]

Phép cộng

Sử dụng toán tử cộng, với hai bộ trở lên, cộng tất cả các phần tử vào một bộ mới. Ví dụ,

>>> print [myTuple];
2

[2, 5, 0, 1, 3, 4]

>>> emptyTuple = [];
>>> anotherEmptyTuple = tuple[];
9 từ khóa

Từ khóa

>>> emptyTuple = [];
>>> anotherEmptyTuple = tuple[];
9, không chỉ có thể được sử dụng với bộ dữ liệu mà còn với chuỗi và danh sách nữa. Dùng để kiểm tra xem có phần tử nào trong dãy hay không. Nó trả về
>>> example = "apple", "orange", "banana", "berry", "mango"
>>> print [example[0]];
1 nếu phần tử được tìm thấy, nếu không thì
>>> example = "apple", "orange", "banana", "berry", "mango"
>>> print [example[0]];
2. Ví dụ,

>>> print [myTuple];
3

Đúng sai

Chức năng
>>> example = "apple", "orange", "banana", "berry", "mango"
>>> print [example[0]];
3

Như bạn có thể đã đoán, hàm này được sử dụng để lấy số lượng phần tử bên trong bất kỳ bộ dữ liệu nào

>>> print [myTuple];
4

3

>>> example = "apple", "orange", "banana", "berry", "mango"
>>> print [example[0]];
4 chức năng

Điều này được sử dụng để so sánh hai bộ dữ liệu. Nó sẽ trả về

>>> example = "apple", "orange", "banana", "berry", "mango"
>>> print [example[0]];
5,
>>> example = "apple", "orange", "banana", "berry", "mango"
>>> print [example[0]];
6 hoặc
>>> secondTuple = 1, 2, "python", 4
>>> print [secondTuple];
1, tùy thuộc vào việc hai bộ dữ liệu được so sánh có giống nhau hay không

Hàm

>>> example = "apple", "orange", "banana", "berry", "mango"
>>> print [example[0]];
4 lấy hai bộ dữ liệu làm đối số, trong đó cả hai bộ dữ liệu được so sánh. Nếu T1 là bộ thứ nhất và T2 là bộ thứ hai, thì

  • nếu T1 > T2 thì cmp[T1, T2] trả về 1
  • nếu T1 = T2 thì cmp[T1, T2] trả về 0
  • nếu T1 > T2 thì cmp[T1, T2] trả về -1

Hàm
>>> example = "apple", "orange", "banana", "berry", "mango"
>>> print [example[0]];
9 và
>>> t = [1, 2, 3, 4, 5]
0

Để tìm giá trị lớn nhất trong một bộ, chúng ta có thể sử dụng hàm

>>> example = "apple", "orange", "banana", "berry", "mango"
>>> print [example[0]];
9, trong khi để tìm giá trị nhỏ nhất, có thể sử dụng hàm
>>> t = [1, 2, 3, 4, 5]
0

Bạn có thể sử dụng += cho bộ dữ liệu không?

Tại sao danh sách Python cho phép bạn += một bộ, trong khi bạn không thể + một bộ? . Không. Cố gắng thêm danh sách và bộ dữ liệu, ngay cả khi chúng tôi không ảnh hưởng đến cả hai, dẫn đến lỗi trên. Đúng rồi. Thêm danh sách vào bộ với + không hoạt động .

Danh sách trong Python có thể được nhân lên không?

Danh sách và chuỗi có nhiều điểm chung. Cả hai đều có trình tự và giống như trăn, chúng dài ra khi bạn cho chúng ăn. Giống như một chuỗi, chúng ta có thể nối và nhân danh sách Python .

Chủ Đề