python 入門到實踐期末考試常出現的考試內容_Python編程入門到實踐—列表篇(一)...

a15bf98490af0467b60984de67532388.png

一、列表是什么?

列表由一系列按特定順序排列的元素組成。

可以創建包含字母表中所有字母、數字0-9或所有家庭成員姓名的列表;也可以將任何東西加入列表中,其中的元素之間可以沒有任何關系。

列表通常包含多個元素,給列表指定一個表示復數的名稱(如:letters、digits或names)

在Python中,用方括號([ ])來表示列表,并用逗號來進行分隔其中的元素。(如下圖)如果你讓Python將列表打印出來,Python將打印列表的內部表示,包括方括號。

1.1訪問列表元素

列表是有序集合,因此要訪問列表的任何原色,只需將該元素的位置或索引告知Python即可。要訪問列表元素,可指出列表的名稱,在指出元素的索引,并將其放在方括號內。

例如,下面的代碼從列表bicycle中提取第一款自行車:

56a6e5c8eec08e4636a92a1d9a3af4bd.png

以上演示了訪問列表元素的語法。當你請求獲取列表元素時,Python只返回該元素,二部包括方括號和引號。

b45dd12189d8af426346a6b1fa94958c.png

1.2索引從0而不是1開始

在Python中,第一個列表元素的索引為0,而不是為1。第二個列表元素的索引為1。根據這種簡單的計數方式,要訪問列表的任何元素,都可將其位置減1,并將結果作為索引。

例如,要訪問第四個列表元素,可使用索引3。下面的代碼訪問索引1和3處的自行車,及輸出的值。

db4b4c4459d41f80d8942f490b4416c9.png

91a11f719411f6c467699500a0f731c0.png

** Python為訪問最后一個列表元素提供了一種特殊語法。通過將索引指定為-1,可讓Python返回最后一個列表元素。這樣返回的值“specialized”。經常需要在不知道列表長度的情況下訪問最后的元素。這種約定也適用于其他負數索引,索引-2返回倒數第二個列表元素,以此類推。**

5466b33e577660450325f4c59e63bdbd.png

9cb88c8c16b4ce050376e684529a7c87.png

1.3使用列表中的各個值

可像使用其他變量一樣使用列表中的各個值。

下面將嘗試從列表中和提取第一款自行車,并使用這個值來創建一條消息。我們使用bicycle[2]的值生成了一個句子,并將其存儲在變量message中。(如下圖)

5a99312242375df7ac8dadb72304951b.png

4567c65232c282f01ce893751e52518f.png

二、修改、添加和刪除元素

2.1修改列表元素

修改列表元素的語法與訪問列表元素的語法類似。要修改列表元素,可指定列表名和要修改的元素的索引,在指定該元素的新值。

例如,假設有一個自行車列表,其中的第五個元素為“Qbike”,如何修改它的值呢?

** 我們首先定義一個自行車列表,其中的第五個元素為“Qbike”。接下來,我們將第五個元素的值修改為“U-bicycle”,輸出標明,第五個元素值確實變了,其他沒變。(可以修改任何列表元素的值,不僅僅是第五個元素值)**

7c4bfe88a3419fc70d26318227f38c88.png

3afa6591bcb9494a03076d9bf5c1c4e4.png

2.2在列表中添加元素

在列表中末尾添加元素

在列表中添加新元素時,最簡單的方式是將元素附加到列表末尾。方法append()將元素‘DDbike’添加到了列表末尾(如下圖)而不影響列表中的其他所有元素。

33ea76d5f5824767655a0b49eeb83c50.png

655dd037a88158922ee31301fa771a64.png

方法append()讓動態的創建列表易如反掌。可以先創建一個空列表,在使用一系列的append()語句添加元素。(如下圖)這種創建列表的方式極其常見,因為經常要等程序運行后,你才知道用戶要在程序中存儲哪些數據。為控制用戶,可先創建一個空列表,用于存儲用戶將要輸入的值,然后將用戶提供的每個新值附加到列表中。

c2d4884470502cd46aa47310fad11fe4.png

5d378abbd5e50181995d6231900c8b8b.png

在列表中插入元素

使用insert()可在列表的任何位置添加新元素。將值‘hellobike’被插入到了列表開頭;方法insert()在索引0處添加空間,并將值‘hellobike’存儲到這個地方。這種操作將列表中既有的每個元素都右移一個位置;

5899c53fd1e35146932a1fdba58a7b20.png

fa487c5f80fb3e2653c7754b3beda2b7.png

2.3從列表中刪除元素

使用del語句刪除元素:要刪除的元素在列表中的位置,可使用del語句。

2c0b1e546f960e3ebf68aebcecd1ed00.png

0cd5f15a045c7109f4ce83ef68d27b54.png

上述的代碼使用del刪除了列表bicycle中的第三個元素——‘hellobike‘’,以此類推。

使用方法pop()刪除元素

有時候,你要將元素從列表中刪除,并接著使用它的值。方法pop()可刪除列表末尾的元素,并讓你能夠接著使用它。

2edd7b18b6d4cae38dd06d42294d7e4e.png

我們首先定義并打印了列表bicycle。接下來,我們從這個列表中彈出一個值,并將其存儲到變量popped_bicycle中。然后我們打印這個列表,以核實從其中刪除了一個值。最后,我們打印彈出的值,以證明我們依然能夠訪問被刪除的值。

輸出表明,列表末尾的值‘hellobike’已刪除,它現在存儲在變量popped_bicycle中(如下圖)。

206b8fb5a7485ae66b1d6d4dfd0af121.png

彈出列表中任何位置處的元素

實際上,你可以使用pop()來刪除列表中任何位置的元素,只需在括號中指定要刪除的元素的索引即可。

bec7f2e108f1b7bea680183a1f51249d.png

首先,我們彈出了列表中的第一款共享單車,然后在打印一條有關這輛自行車的消息。輸出的是一個簡單語句,描述了我想要騎的共享單車:

c13fac8ef195418cc9078b5da4f5e0f3.png

每當你使用pop()時,被彈出的元素就不在列表中了。

如果你要從列表中刪除一個元素,且不再以任何方式使用它,就是用del語句。

如果你要在刪除元素后還能繼續使用它,就使用方法pop()。

根據值刪除元素

有時候,你不知道要從列表中刪除的值所處的位置。如果你只知道要刪除的元素的值,可使用方法remove()。

36b9fcb9b93deea6e3848dc67b6a921b.png

c8f1788e6078ddd40d29b916bec66f46.png

使用remove()從列表中刪除元素時,可接著使用它的值。下面刪除值‘Qbike’,并打印一條消息,指出從列表中刪除的原因:

07d6b4d04333841b1992f03b9a533249.png

上述,我們將值‘Qbike’存儲在變量to_ride中。接下來,我們使用這個變量來告訴Python將哪個值從列表中刪除。最后,值‘Qbike’已經從列表中刪除。但它還存儲在變量to_ride中,打印并指出將‘Qbike’從列表bicycle中刪除的原因(如下圖)

244b6653dda5be97407148c6170de895.png

注意:方法remove()只刪除第一個指定的值。如果要刪除的值可能在列表中出現多次,就需要使用循環來判斷是否刪除了所有這樣的值。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/378922.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/378922.shtml
英文地址,請注明出處:http://en.pswp.cn/news/378922.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

c#中將集合寫入文本_在C#中將記錄插入MySQL數據庫

c#中將集合寫入文本In the last tutorial (how to connect with MySQL database in C#?), we learned about making the connection with MySQL database in C#. Here, in this tutorial, we will learn how to insert the records in MySQL database in C#? 在上一教程( 如何…

read/fread write/fwrite 的區別

fread就是通過read來實現的,fread是C語言的庫,而read是系統調用。 差別在read每次讀的數據是調用者要求的大小,比如調用者要求讀取10個字節數據,read就會從內核緩沖區(操作系統開辟的一段空間用來存儲磁盤上的數據&am…

如何在子網中訪問上層網絡的計算機文件夾

場景 公司路由器A,直接接外部網線,內部ip192.168.11.1,lan口又接了路由器A1,IP為192.168.11.2,A1的lan端口接了一臺電腦A,Ip為192.168.0.2,接了另外一個路由A2,Ip為192.168.11.3&…

基于Web的套打方案分析

應用web化,不論對開發商,還是對用戶來說,實在是一種很經濟的選擇,因為基于web的應用,客戶端的規則很簡單,容易學習,容易維護,容易發布。但對程序員來說,因為瀏覽器的局限…

day1-Linux操作系統基礎

該專欄所有內容筆記均來自傳智播客培訓班 1.什么是操作系統(operate system OS) 小議:承上啟下作用,向下可以控制硬件,向上能夠支持軟件的運行。一個可以控制硬件的軟件。 小明找小紅聊天,小明打開QQ&…

關閉瀏覽器 清空session_跨境網絡小知識之Session

跨境小伙伴們大家好,上一篇為大家介紹了Cookie,今天就為大家介紹下連接cookie的另一端Session,交互過程中,二者缺一不可。與Cookie相對,Session是存儲在服務端的,他們之間是通過一個叫做sessionID的東東建立…

我和乘子交替方向法admm_找到最大和交替子序列

我和乘子交替方向法admmProblem statement: 問題陳述: Given a sequence of numbers, you have to find the maximum sum alternating subsequence and print the value. A sequence is an alternating sequence when it will be maintain like (increasing) ->…

Dojo學習筆記(一):Hello Dojo!

歡迎來到Dojo世界!在這篇文章中你將會學習到如何加載Dojo以及探索Dojo的一些核心功能。你還會了解Dojo的基于AMD的模塊架構,探索如何加載額外的模塊來增加功能到您的Web站點或應用程序,并找出在出錯的時如何得到幫助。讓我們開始吧 開始學習D…

轉:我眼中的Visual Studio 2010架構工具

來自:http://www.cnblogs.com/wayfarer/archive/2010/07/30/1788398.html我眼中的Visual Studio 2010架構工具影響架構質量的是構建體系架構的思想、原則、實踐與架構師的經驗,絕不是工具。即使是最優秀的架構工具,也不可能像倚天寶劍一般——…

VMware創建Ubuntu操作系統到網絡配置詳細流程

一、創建虛擬機 Ubuntu下載鏈接 1,看個人需求了,有更高的版本,下載Ubuntu鏡像 2,VMware官網隨便下載即可 3,創建新的虛擬機 4,自定義 5,默認即可 6,稍后安裝操作系統 7&#xf…

djiango配置mysql_數據庫MySQL相關環境配置以及數據庫與Go的連接

Linux下安裝好MySQL后,Windows安裝可視化工具navicatLinux下MySQL與Windows下navicat進行連接:安裝的過程很是揪心,各種查網站、大致把坑都寫了出來:1、在Linux下的mysql語句中,mysql> select host,user,authentication_string…

緩沖文件系統(fopen/fread/fwrite)和非緩沖文件系統(open/read/write)

open:系統調用,返回的是文件描述符,即文件句柄,是文件在文件描述副表里的索引。 fopen:C語言庫函數,返回的是一個指向文件結構的指針。fopen是ANSI C標準中的C語言庫函數,在不同的操作系統中應…

java 繼承示例_Java中的繼承類型以及示例

java 繼承示例Prerequisite: Inheritance and its implementation in Java 先決條件: 繼承及其在Java中的實現 Java中的繼承類型 (Type of inheritance in Java) In Java programming, there are following types of the inheritances, 在Java編程中,有…

基于HtmlParser的網絡爬蟲

一、 目標 獲取網頁中的超鏈接及鏈接名,如從http://www.hao123.com/開始,抓取所有hao123鏈接到的超鏈接,再以獲取到的鏈接網頁為目標,獲取它所鏈接到的網頁。 二、環境及開發工具 環境:Java 工具:MyEclip…

VMware下Ubuntu無法全屏顯示問題

一、運行Ubuntu的時候無法全屏顯示,如圖所示下載VMware Tools 二、之后將下載的文件拷貝到home文件夾下 三、解壓該壓縮包 由于該壓縮包是.tar.gz結尾的故壓縮命令:tar -zxvf VMwareTools-10.2.5-8068393.tar.gz,當然各版本有可能不一樣&am…

AMQP RabbitMQ

轉載:http://blog.ftofficer.com/2010/03/translation-rabbitmq-python-rabbits-and-warrens/官方介紹:http://www.rabbitmq.com/erlang-client-user-guide.html開始吧AMQP當中有四個概念非常重要:虛擬主機(virtual host&#xff…

fsync與fflush的關系和區別

read/write/fsync與fread/fwrite/fflush的關系和區別 read/write/fsync: linux底層操作; 內核調用, 涉及到進程上下文的切換,即用戶態到核心態的轉換,這是個比較消耗性能的操作。 fread/fwrite/fflush:…

lumanager mysql密碼_LuManager單獨安裝mysqli

首先確定你正在使用的php版本以及php.ini的位置,LuManager自帶了幾個版本。如果是默認安裝,應該是5.2.17。php.ini的位置應該是在/usr/local/php_fcgi/lib/php.ini要確定這些信息,可以自己編寫一個 info.phpphpinfo();?>把文件存放到網站…

數據庫系統數據庫管理系統_數據庫管理系統介紹

數據庫系統數據庫管理系統數據庫 (Database) A database is a collection of related data. In database any user can efficiently access the data which users want to retrieve. It can be anything from a simple collection of roll numbers, names, addresses and phone…

vba將select的值直接賦給變量

strSql ""strSql strSql & " select max(number) from dbo.#DATA" & vbCrLfrss.Open strSql, cnn numb rss.Fields(0)rss.Close轉載于:https://www.cnblogs.com/zigewb/archive/2013/02/06/2900645.html