Python中[?]、[:]和[::]的用法總結(jié)
對切片進(jìn)行操作:
[ ]: 主要是取序列中的一個元素,例如:str_list[2]取序列中的第3個元素,這里2指序列中的index。
[:]: 主要是取序列中的一段元素,例如 str_list[1:4] 表示訪問 str_list 序列中的第二到第四個元素 (str_list[1],str_list[2],str_list[3]),不包含 str_list[4] 元素。
如果沒有提供索引值,則默認(rèn)從 0 開始。str_list[:4] 表示訪問這個序列的第一到第四個元素 (不包含 str_list[4] 元素),str_list[4:] 表示訪問第五到最后一個元素。注意:m\n可以為負(fù),m>n時返回空。
[::]:主要逆序和間隔取序列中的元素,例如:(1)翻轉(zhuǎn)序列的元素,例如 str_list[::-1] 表示翻轉(zhuǎn)取序列中的元素, str_list 序列中的元素。(2):間隔取元素:str_list[1::2],從索引1開始,每次跳2個取取元素。注意:當(dāng)n為負(fù)時逆序取數(shù),當(dāng)n為正的時候,m為空則默認(rèn)m=0,n為負(fù)時,m為空則默認(rèn)為-1。
#!/usr/bin/env python # -*- coding: utf-8 -*- from __future__ import absolute_import from __future__ import print_function from __future__ import division import os import sys import cv2 import numpy as np import matplotlib.pyplot as plt print(16 * "++--") str_list = ['A', 'B', 'C', 'D', 'E', 'F', 'G'] print("str_list:", str_list) print("str_list[3]:", str_list[3]) print("str_list[1:4]:", str_list[1:4]) print("str_list[:4]:", str_list[:4]) print("str_list[4:]:", str_list[4:]) print("str_list[::-1]:", str_list[::-1]) print("str_list[::2]:", str_list[::2]) --------------------------------------------------- ++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++-- str_list: ['A', 'B', 'C', 'D', 'E', 'F', 'G'] str_list[3]: D str_list[1:4]: ['B', 'C', 'D'] str_list[:4]: ['A', 'B', 'C', 'D'] str_list[4:]: ['E', 'F', 'G'] str_list[::-1]: ['G', 'F', 'E', 'D', 'C', 'B', 'A'] str_list[::2]: ['A', 'C', 'E', 'G'] Process finished with exit code 0
切片操作符在 Python中的原型是 [start:stop:step],[開始索引:結(jié)束索引:步長值]。
開始索引:從 0 開始。序列從左向右方向中,第一個值的索引為 0,最后一個為 -1。
結(jié)束索引:切片操作符將取到該索引為止,不包含該索引的值。
步長值:默認(rèn)是一個接著一個切取。如果為 2,則表示進(jìn)行隔一取一操作。步長值為正時表示從左向右取。如果為負(fù),則表示從右向左取。步長值不能為 0。
[:] 就是原樣復(fù)制一個 list。
import os import sys import cv2 import numpy as np print(16 * "++--") str_data = 'abcdefg' print("str_data[3]:", str_data[3]) print("str_data[3:5]:", str_data[3:5]) print("str_data[:5]:", str_data[:5]) print("str_data[3:]:", str_data[3:]) print("str_data[::2]:", str_data[::2]) print("str_data[::-1]:", str_data[::-1]) print("str_data[-1]:", str_data[-1]) print("str_data[-2]:", str_data[-2]) print("str_data[-5:-2]:", str_data[-5:-2]) print("str_data[-2:-5]:", str_data[-2:-5]) -------------------------------------------------- ++--++--++--++--++--++--++--++--++--++--++--++--++--++--++--++-- str_data[3]: d str_data[3:5]: de str_data[:5]: abcde str_data[3:]: defg str_data[::2]: aceg str_data[::-1]: gfedcba str_data[-1]: g str_data[-2]: f str_data[-5:-2]: cde str_data[-2:-5]: Process finished with exit code 0
總結(jié)
到此這篇關(guān)于Python中[ ]、[:]和[::]用法總結(jié)的文章就介紹到這了,更多相關(guān)Python [ ]、[:]和[::]用法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python基礎(chǔ)教程(一)——Windows搭建開發(fā)Python開發(fā)環(huán)境
這篇文章主要介紹了Windows如何搭建開發(fā)Python開發(fā)環(huán)境,幫助大家開始學(xué)習(xí)Python,感興趣的朋友可以了解下2020-07-07conda創(chuàng)建環(huán)境過程出現(xiàn)"Solving?environment:?failed"報錯的詳細(xì)解
很長一段時間沒用conda了,然后突然使用conda創(chuàng)建環(huán)境報錯,所以下面這篇文章主要給大家介紹了關(guān)于conda創(chuàng)建環(huán)境過程出現(xiàn)"Solving?environment:?failed"報錯的詳細(xì)解決方法,需要的朋友可以參考下2022-11-11python opencv3實現(xiàn)人臉識別(windows)
這篇文章主要為大家詳細(xì)介紹了python opencv3實現(xiàn)人臉識別程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-05-05Python使用wxpy模塊實現(xiàn)微信兩兩群組消息同步功能(推薦)
這篇文章主要介紹了Python使用wxpy模塊實現(xiàn)微信兩兩群組消息同步,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-06-06Python實現(xiàn)簡單的學(xué)生信息管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了Python實現(xiàn)簡單的學(xué)生信息管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03python實現(xiàn)身份證實名認(rèn)證的方法實例
這篇文章主要給大家介紹了關(guān)于python實現(xiàn)身份證實名認(rèn)證的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用python具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11