Python: single colon vs double colon

前端 未结 5 1335
醉梦人生
醉梦人生 2020-12-31 15:05

What is the difference between single and double colon in this situation? data[0:,4] vs data[0::,4]

women_only_stats = data[0::,4]         


        
5条回答
  •  情书的邮戳
    2020-12-31 15:24

    No, there is no difference.

    See the Python documentation for slice:

    From the docs: a[start:stop:step]

    The start and step arguments default to None. Slice objects have read-only data attributes start, stop and step which merely return the argument values (or their default).

    In this case, you are including an empty step parameter.

    >>> a = [1,2,3,4]
    >>> a[2:]
    [3,4]
    >>> a[2::]
    [3,4]
    >>> a[2:] == a[2::]
    True
    

    And to understand what the step parameter actually does:

    >>> b = [1,2,3,4,5,6,7,8,9,10]
    >>> b[0::5]
    [1, 6]
    >>> b[1::5]
    [2, 7]
    

    So by leaving it to be implicitly None (i.e., by either a[2:] or a[2::]), you are not going to change the output of your code in any way.

    Hope this helps.

提交回复
热议问题