Python學習一:序列基礎詳解

来源:http://www.cnblogs.com/NiceCui/archive/2017/11/18/7858473.html
-Advertisement-
Play Games

作者:NiceCui 本文謝絕轉載,如需轉載需徵得作者本人同意,謝謝。 本文鏈接:http://www.cnblogs.com/NiceCui/p/7858473.html 郵箱:[email protected] 日期:2017-11-18 Python學習一:序列基礎詳解 一:序列介紹 Pyth ...


作者:NiceCui

  • 本文謝絕轉載,如需轉載需徵得作者本人同意,謝謝。
  • 本文鏈接:http://www.cnblogs.com/NiceCui/p/7858473.html
  • 郵箱:[email protected]
  • 日期:2017-11-18

Python學習一:序列基礎詳解

一:序列介紹

Python中一些類型的變數,就像容器一樣,收納多個數據,序列就像一個有序的隊伍,像整齊的萬里長城,存儲著各種各樣的數據,他們按照一定的秩序排列在一起,很威武,很美觀,所以說序列是有序的數據集合。序列包含的一個數據被稱作序列的一個元素。序列可以包含一個或者多個元素,也可以沒有任何元素的空序列。

二:序列分類

序列有兩種,分別是元組(Tuple)和列表List)。

兩者的主要區別是:一旦建立有效的序列,遠組的各個元素不可以再被修改和變更,將會變成一組固定的元素。所以元組跟像是一個特殊的表,數據是固定的,很多人都管它叫“定值表”。

三:元組和列表建立

 

 1 '''
 2 Created on 2017年11月18日
 3 
 4 @author: NiceCui
 5 '''
 6 '-----------------------tuple 元組------------------------------'
 7 
 8 tuple = (2,3,"good","hello tuple",666,"你好")
 9 
10 print(tuple[0])
11 print(tuple[1])
12 print(tuple[2])
13 print(tuple[3])
14 
15 '結果:'
16 '>>> 2'
17 '>>> 3'
18 '>>> good'
19 '>>> hello'
20 
21 '-----------------------List 列表------------------------------'
22 
23 list = [1,2,"list",6,"python"]
24 
25 print(list[0])
26 print(list[1])
27 print(list[2])
28 ''' 29 '>>> 1' 30 '>>> 2' 31 '>>> list'
'''

 

這是使用eclipse上寫的python,不清楚怎麼使用eclipse安裝python插件的同學可以看看我Python隨筆分類中有介紹怎麼使用eclipse安裝python插件;

安裝插件教程:http://www.cnblogs.com/NiceCui/p/7858107.html

從上面的的例子可以看出,同一個序列可以有包含不同類型的元素,這也是python動態類型的一個體現,還有,序列元素不僅可以是基本類型的數據,還可以是另外一個類型的序列。這也是和java語言上有點差別的,使用Python語言書寫序列會顯得很簡單感覺功能十分強大。

四:嵌套和固定的展示

列表內部嵌套列表

 1 '''
 2 Created on 2017-11-18
 3 @author: NiceCui
 4 '''
 5 
 6 next_list = [1,[3,"hello",4,5]] 
 7 
 8 print(next_list[0])
 9 print(next_list[1][0])
10 print(next_list[1][1])
11 
12 '''
13 '>>> 1'
14 '>>> 3'
15 '>>> hello'
16 '''

元組不能改變數據的緣由,很少去建立一個元組,但是序列可以增加和修改元素,所以序列經常被用作去建立一個空表;

1 '''
2 空列表
3 '''
4 
5 next_list = []

 

五:序列的數據讀取

剛纔上方的小例子中已經展示了怎麼使用下標去找到單個元素,當然還可以通過範圍的引用方式去找到多個元素

範圍引用的基本樣式

1 序列名[下限:上限:步長]

下限表示起始下標,上限表示結尾下標。在起始和結尾下標之間,按照步長的間隔來找到元素。

如果預設步長為1,也即是上限和下限之間的每隔1個元素都會出現在結果中。引用多個元素將成為一個新的序列。接下來做一個小的例子:

 1 list = [1,2,"list",6,"python"]
 2 
 3 print(list[0])
 4 print(list[1])
 5 print(list[2])
 6 
 7 print(list[:6]) # 下標 0 ~ 5 的元素都輸出
 8 
 9 print(list[2:]) # 下標 2 ~ 最後一個 元素都輸出
10 
11 print(list[0:6:2]) # 下標 0 2 4 元素都輸出
12 
13 print(list[2:0:-1]) # 下標 2 1 元素都輸出
14 
15 sliced = list[2:0:-1] 
16 
17 type(sliced)  # 範式引用的結果是一個元組

除此之外Python還提供了一個尾部引用的語法,用於引用序列尾部的元素:

 1 '''
 2 Created on 2017-11-18
 3 @author: NiceCui
 4 '''
 5 
 6 if __name__ == '__main__':
 7     pass
 8 
 9 list = [1,2,"list",6,"python"]
10 
11 print(list[-1])   # 返回序列最後一個元素
12 
13 print(list[-3])   # 返回序列倒數第三個元素
14 
15 print(list[1:-1]) # 返回序列倒數第2個元素 和倒數第2個元素

 

 

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • hasattr(object, name)判斷一個對象裡面是否有name屬性或者name方法,返回BOOL值,有name特性返回True, 否則返回False。需要註意的是name要用括弧括起來 getattr(object, name[,default])獲取對象object的屬性或者方法,如果存 ...
  • 面向對象概念 面向對象是利用類和對象來創建各種模型對真實世界進行描述,也能使程式變得簡單。 class 類 一個類即對一類擁有相同屬性的對象的抽象。其中類定義了這些對象都具備非屬性以及方法。 object 對象 一個對象即是一個類的實例化後的實例,一個類必須經過實例化後才能在程式中調用,一個類可以有 ...
  • 1. 框架代碼 用 PyCharm 新建一個名為 SimplePaintApp 的項目,然後新建一個名為 simple_paint_app.py 的 Python 源文件, 在代碼編輯器中,輸入以下框架代碼 運行上面的代碼,將顯示一個黑色背景的視窗 看起來很沒勁的樣子,不過你可不要小瞧這幾行代碼。這 ...
  • 在方法裡面建立properties對象 Properties pps = new Properties(); 調用.load()方法 pps.load(new FileInputStream("E:\\workplace\\testStudent\\src\\we.properties")); 整個 ...
  • 大家在中學就已經學過變數的概念了。例如:我們令 x = 100,則可以推出 x*2 = 200 試試下麵這段 Python 代碼 運行上面的代碼,小海龜將畫出下麵的圖案 x = 100 聲明瞭變數 x,並將它賦值為 100,用大家熟悉的中學數學語言來說,就是“令 x 等於 100” 接下來的代碼中 ...
  • 前面我們學習了numpy,現在我們來學習一下pandas。 Python Data Analysis Library 或 pandas 主要用於處理類似excel一樣的數據格式,其中有表頭、數據序列號以及實際的數據,而numpy就僅僅包含了實際的數據。 安裝 直接輸入: 最基本用法 輸出: 我們可以 ...
  • List<Map<String, Object>> queryData = configDao.queryConfig( expressions, conditions, expressions); Collections.sort(queryData, new Comparator<Map<Str ...
  • 一.生產者消費者問題? 1.生產者消費者問題(英語:Producer-consumer problem),也稱有限緩衝問題(英語:Bounded-buffer problem),是一個多線程同步問題的經典案例。該問題描述了兩個共用固定大小緩衝區的線程——即所謂的“生產者”和“消費者”——在實際運行時 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...