Hướng dẫn what is :: double colon in python? - :: dấu hai chấm trong python là gì?

TL;DR

Ví dụ trực quan này sẽ chỉ cho bạn cách chọn các yếu tố được chọn gọn gàng trong một ma trận numpy (mảng 2 chiều) theo cách khá thú vị (tôi hứa). Bước 2 bên dưới minh họa việc sử dụng "dấu hai bên"

In [5]: X2 = X[2:9,3:8]

In [6]: X2
Out[6]:
array([[23, 24, 25, 26, 27],
       [33, 34, 35, 36, 37],
       [43, 44, 45, 46, 47],
       [53, 54, 55, 56, 57],
       [63, 64, 65, 66, 67],
       [73, 74, 75, 76, 77],
       [83, 84, 85, 86, 87]])
7 trong câu hỏi.Step 2 below illustrate the usage of that "double colons"
In [5]: X2 = X[2:9,3:8]

In [6]: X2
Out[6]:
array([[23, 24, 25, 26, 27],
       [33, 34, 35, 36, 37],
       [43, 44, 45, 46, 47],
       [53, 54, 55, 56, 57],
       [63, 64, 65, 66, 67],
       [73, 74, 75, 76, 77],
       [83, 84, 85, 86, 87]])
7 in question.

.

Một ví dụ cụ thể để cai trị tất cả ...

Giả sử chúng ta có một ma trận numpy trông như thế này:

In [1]: import numpy as np

In [2]: X = np.arange(100).reshape(10,10)

In [3]: X
Out[3]:
array([[ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9],
       [10, 11, 12, 13, 14, 15, 16, 17, 18, 19],
       [20, 21, 22, 23, 24, 25, 26, 27, 28, 29],
       [30, 31, 32, 33, 34, 35, 36, 37, 38, 39],
       [40, 41, 42, 43, 44, 45, 46, 47, 48, 49],
       [50, 51, 52, 53, 54, 55, 56, 57, 58, 59],
       [60, 61, 62, 63, 64, 65, 66, 67, 68, 69],
       [70, 71, 72, 73, 74, 75, 76, 77, 78, 79],
       [80, 81, 82, 83, 84, 85, 86, 87, 88, 89],
       [90, 91, 92, 93, 94, 95, 96, 97, 98, 99]])

Nói vì một số lý do, sếp của bạn muốn bạn chọn các yếu tố sau:

Hướng dẫn what is :: double colon in python? - :: dấu hai chấm trong python là gì?

"Nhưng làm thế nào ???" ... Đọc tiếp! (Chúng ta có thể làm điều này theo cách tiếp cận 2 bước)

Bước 1 - Lấy tập hợp con

Chỉ định "chỉ mục bắt đầu" và "chỉ mục kết thúc" theo cả hai hướng theo hàng và thông minh cột.

Hướng dẫn what is :: double colon in python? - :: dấu hai chấm trong python là gì?

Trong mã:

In [5]: X2 = X[2:9,3:8]

In [6]: X2
Out[6]:
array([[23, 24, 25, 26, 27],
       [33, 34, 35, 36, 37],
       [43, 44, 45, 46, 47],
       [53, 54, 55, 56, 57],
       [63, 64, 65, 66, 67],
       [73, 74, 75, 76, 77],
       [83, 84, 85, 86, 87]])

Thông báo bây giờ chúng tôi vừa có được tập hợp con của chúng tôi, với việc sử dụng kỹ thuật lập chỉ mục bắt đầu và kết thúc đơn giản. Tiếp theo, làm thế nào để làm điều đó "Nhảy" ... (Đọc tiếp!)

Bước 2 - Chọn các phần tử (với đối số "Bước nhảy")

Bây giờ chúng ta có thể chỉ định các "bước nhảy" theo cả hai hướng thông minh và thông minh cột (để chọn các phần tử theo cách "nhảy") như thế này:

Hướng dẫn what is :: double colon in python? - :: dấu hai chấm trong python là gì?

Trong mã (lưu ý các dấu hai bên):

In [7]: X3 = X2[::3, ::2]

In [8]: X3
Out[8]:
array([[23, 25, 27],
       [53, 55, 57],
       [83, 85, 87]])

Chúng tôi vừa chọn tất cả các yếu tố theo yêu cầu! :)

& nbsp; củng cố bước 1 (bắt đầu và kết thúc) và bước 2 ("Nhảy")

Bây giờ chúng ta biết khái niệm này, chúng ta có thể dễ dàng kết hợp Bước 1 và Bước 2 thành một bước hợp nhất - cho sự nhỏ gọn:

In [9]: X4 = X[2:9,3:8][::3,::2]

    In [10]: X4
    Out[10]:
    array([[23, 25, 27],
           [53, 55, 57],
           [83, 85, 87]])

Done!

Một đại tràng (:) giữ rất nhiều tầm quan trọng trong Python. Một dấu hai chấm trong Python được sử dụng cho nhiều chức năng bao gồm khai báo các chức năng, tìm nạp dữ liệu, lập chỉ mục mảng và hơn thế nữa. Hãy để thảo luận về các chức năng và việc sử dụng các đại kết chi tiết hơn dưới đây.


Chức năng của đại tràng (:)

  • Một đại tràng được sử dụng để đại diện cho một khối thụt lề.
  • Nó cũng được sử dụng để tìm nạp dữ liệu và phạm vi chỉ mục hoặc mảng
  • Một cách sử dụng chính của đại tràng là cắt lát. Trong việc cắt, lập trình viên chỉ định chỉ số bắt đầu và chỉ số kết thúc và tách chúng bằng dấu hai chấm là cú pháp chung của việc cắt.slicing. In slicing, the programmer specifies the starting index and the ending index and separates them using a colon which is the general syntax of slicing.
  • Một đại tràng được sử dụng để xác định các khóa trong từ điển.

Có nhiều cách sử dụng đại tràng hơn trong Python và chúng tôi thực tế sẽ sử dụng các chức năng dưới đây.


Các loại dấu chấm trong Python

  • Đại tràng (:)
  • Double Colon (: :)

Sử dụng đại tràng trong Python để thụt vào

Như bạn sẽ thấy trong ví dụ dưới đây, thời điểm bạn sử dụng dấu hai chấm trên một dòng, dòng tiếp theo được tự động thụt vào.

>>> a = 20
>>> if a > 10:
         print("20 is greater than 10")
    else:
         print("20 is less than 10")

Output
20 is greater than 10


Sử dụng ruột kết (:) trong chuỗi để cắt

Các chức năng của toán tử đại tràng trong việc cắt bao gồm lập chỉ mục một phạm vi cụ thể và hiển thị đầu ra bằng toán tử đại tràng.

>>> a = "AskPython"
>>> print(a[2:8])
kPytho

Một dấu hai chấm được sử dụng ở phía bên phải của chỉ mục sẽ hiển thị mọi thứ sau chỉ mục cụ thể đó dưới dạng đầu ra. Điều này sẽ không hiển thị chỉ mục được đề cập trong mã.right side of the index will display the everything after that particular index as an output. This will not display the index that is mentioned in the code.

>>> a = "AskPython"
>>> print(a[3:])
Python

Một dấu hai chấm được sử dụng ở phía bên trái của chỉ mục sẽ hiển thị mọi thứ trước chỉ mục cụ thể dưới dạng đầu ra. Điều này sẽ hiển thị chỉ mục được đề cập trong mã quá.left side of the index will display everything before the particular index as an output. This will display that index mentioned in the code too.

>>> a = "AskPython"
>>> print(a[:7])
AskPyth

Lập chỉ mục âm: Cắt chỉ số sẽ xảy ra từ cuối chuỗi bằng toán tử đại tràng.Slicing of index will happen from the end of the string using the colon operator.

>>> a = "AskPython"
>>> print(a[-5:-2])
yth


Sử dụng Đại tràng (:) để truy cập các yếu tố danh sách cụ thể

Truy cập các yếu tố cụ thể từ danh sách hoạt động theo cách tương tự như chúng tôi đã quan sát trong việc cắt chuỗi ở trên. Một tập hợp các từ hoặc phần tử cụ thể sẽ được hiển thị với sự trợ giúp của phạm vi chỉ mục và toán tử đại tràng. Nhìn vào các ví dụ sau để hiểu rõ hơn:

>>> list = ["Python","C","Java","Mysql","PHP","Ruby","HTML"]
>>> print(list[2:6])
['Java','Mysql','PHP','Ruby']

In [5]: X2 = X[2:9,3:8]

In [6]: X2
Out[6]:
array([[23, 24, 25, 26, 27],
       [33, 34, 35, 36, 37],
       [43, 44, 45, 46, 47],
       [53, 54, 55, 56, 57],
       [63, 64, 65, 66, 67],
       [73, 74, 75, 76, 77],
       [83, 84, 85, 86, 87]])
0

In [5]: X2 = X[2:9,3:8]

In [6]: X2
Out[6]:
array([[23, 24, 25, 26, 27],
       [33, 34, 35, 36, 37],
       [43, 44, 45, 46, 47],
       [53, 54, 55, 56, 57],
       [63, 64, 65, 66, 67],
       [73, 74, 75, 76, 77],
       [83, 84, 85, 86, 87]])
1

Một toán tử đại tràng cũng có thể được sử dụng để thay thế các yếu tố nhất định trong danh sách bằng các yếu tố hiện có.

In [5]: X2 = X[2:9,3:8]

In [6]: X2
Out[6]:
array([[23, 24, 25, 26, 27],
       [33, 34, 35, 36, 37],
       [43, 44, 45, 46, 47],
       [53, 54, 55, 56, 57],
       [63, 64, 65, 66, 67],
       [73, 74, 75, 76, 77],
       [83, 84, 85, 86, 87]])
2


Sử dụng các dấu chấm để xác định các khóa trong từ điển

Từ điển được hiển thị trong khóa: Định dạng giá trị.key : value format.

In [5]: X2 = X[2:9,3:8]

In [6]: X2
Out[6]:
array([[23, 24, 25, 26, 27],
       [33, 34, 35, 36, 37],
       [43, 44, 45, 46, 47],
       [53, 54, 55, 56, 57],
       [63, 64, 65, 66, 67],
       [73, 74, 75, 76, 77],
       [83, 84, 85, 86, 87]])
3


Double Colons (: :) trong Python

Các dấu chấm hai (: :) trong Python được sử dụng để nhảy các phần tử trong nhiều trục. Nó cũng là một toán tử lát cắt. Mỗi mục của chuỗi được cắt bằng cách sử dụng hai dấu hai chấm.

Lấy ví dụ một chuỗi ‘Hỏi Python, và chúng tôi sẽ cố gắng điều khiển nó bằng cách sử dụng toán tử lát cắt để hiểu rõ hơn. Sau khi khởi tạo biến với chỉ định số chỉ mục trong cùng một cột và sử dụng ::

In [5]: X2 = X[2:9,3:8]

In [6]: X2
Out[6]:
array([[23, 24, 25, 26, 27],
       [33, 34, 35, 36, 37],
       [43, 44, 45, 46, 47],
       [53, 54, 55, 56, 57],
       [63, 64, 65, 66, 67],
       [73, 74, 75, 76, 77],
       [83, 84, 85, 86, 87]])
4

Những dấu hai bên này được sử dụng để tách các giá trị của các cờ với nhau. Khi lập trình viên không chỉ định các giá trị của các cờ, trình thông dịch sẽ sử dụng các giá trị mặc định của nó.

Cú pháp của một toán tử lát sử dụng dấu hai chấm là [Bắt đầu: Dừng: Bước]. Bắt đầu (biểu thị số từ nơi cắt sẽ bắt đầu), dừng (cho biết số trong đó việc cắt sẽ dừng) và các bước (cho biết số lượng người thông báo sẽ thực hiện để cắt chuỗi) là ba cờ và tất cả các cờ này là số nguyên giá trị.[Start : Stop : Steps]. Start (Indicates the number from where the slicing will start), Stop(Indicates the number where the slicing will stop) and Steps(Indicates the number of jumps interpreter will take to slice the string) are the three flags and all these flags are integer values.

In [5]: X2 = X[2:9,3:8]

In [6]: X2
Out[6]:
array([[23, 24, 25, 26, 27],
       [33, 34, 35, 36, 37],
       [43, 44, 45, 46, 47],
       [53, 54, 55, 56, 57],
       [63, 64, 65, 66, 67],
       [73, 74, 75, 76, 77],
       [83, 84, 85, 86, 87]])
5

Trong mã trên, trình thông dịch sau khi thực thi được in từng ký tự thứ hai bắt đầu từ INDEX 0 đến INDEX 19. Mã này có thể được giảm xuống một đoạn cắt ngắn bằng cách sử dụng toán tử Double Colon ::.

In [5]: X2 = X[2:9,3:8]

In [6]: X2
Out[6]:
array([[23, 24, 25, 26, 27],
       [33, 34, 35, 36, 37],
       [43, 44, 45, 46, 47],
       [53, 54, 55, 56, 57],
       [63, 64, 65, 66, 67],
       [73, 74, 75, 76, 77],
       [83, 84, 85, 86, 87]])
6

Toán tử :: được sử dụng trước số chỉ mục sẽ tạo ra cùng một đầu ra.

Sự kết luận

Mặc dù chủ đề này khá nhỏ, nhưng hiểu được việc sử dụng dấu hai chấm trong Python có thể giúp bạn dễ dàng thông qua việc học từ điển, chức năng, v.v.

Hãy theo dõi các hướng dẫn thêm!

Ý nghĩa của ::

[::-1] có nghĩa là: Bắt đầu ở cuối (trừ làm điều đó cho bạn), kết thúc khi không có gì rời đi và đi về phía sau 1.Start at the end (the minus does that for you), end when nothing's left and walk backwards by 1.

Double Double :: có nghĩa là trong Python?

Nhà điều hành phân chia kép trong Python trả về giá trị sàn cho cả đối số số nguyên và dấu phẩy động sau khi phân chia.returns the floor value for both integer and floating-point arguments after division.

Làm gì :: trong Python có nghĩa là?

Trong Python, [::-1] có nghĩa là đảo ngược một chuỗi, danh sách hoặc bất kỳ điều gì có thể lặp lại với một đơn đặt hàng.Ví dụ: Hello = "Hello World"reversing a string, list, or any iterable with an ordering. For example: hello = "Hello world"

Là gì :: trong cắt lát?

Hãy xem xét một danh sách Python, theo đơn đặt hàng để truy cập vào một loạt các yếu tố trong danh sách, bạn cần cắt một danh sách.Một cách để làm điều này là sử dụng toán tử cắt đơn giản, tức là đại tràng (:) với toán tử này, người ta có thể chỉ định nơi bắt đầu cắt lát, nơi kết thúc và chỉ định bước.colon(:) With this operator, one can specify where to start the slicing, where to end, and specify the step.