在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Python列表的基本概念、常用操作及實際應用

網絡技術干貨圈 ? 來源:網絡技術干貨圈 ? 2023-04-16 10:42 ? 次閱讀

Python列表是一種強大的數據結構,用于在程序中存儲和操作一系列的值。列表是可變的(mutable),可以動態地增加、刪除和修改其中的元素。在Python中,列表是最常用的數據結構之一,被廣泛應用于各種編程場景,從簡單的數據處理到復雜的數據結構和算法。本文將介紹Python列表的基本概念、常用操作以及一些實際應用。

列表的基本概念

列表是一個有序的集合,其中的每個元素都可以是任意的數據類型,包括整數、浮點數、字符串、布爾值、甚至是其他的列表。列表用方括號([])來表示,元素之間用逗號(,)分隔。例如:

#創建一個列表
fruits=["apple","banana","cherry","date"]

#列表可以包含不同的數據類型
mixed_list=[1,2.5,"three",True]

列表的基本操作

Python列表提供了豐富的操作方法,使我們可以方便地對列表進行增加、刪除、修改、訪問等操作。

訪問列表元素:可以使用索引來訪問列表中的元素,索引從0開始,表示列表中第一個元素,依次類推。例如:

fruits=["apple","banana","cherry","date"]

#訪問列表中的元素
print(fruits[0])#輸出:apple
print(fruits[2])#輸出:cherry

修改列表元素:可以通過索引來修改列表中的元素。例如:

fruits=["apple","banana","cherry","date"]

#修改列表中的元素
fruits[1]="grape"#將列表中第二個元素修改為grape
print(fruits)#輸出:["apple","grape","cherry","date"]

增加元素:可以使用append()方法向列表末尾添加一個元素,使用insert()方法在指定的位置插入一個元素。例如:

fruits=["apple","banana","cherry","date"]

#向列表末尾添加一個元素
fruits.append("fig")
print(fruits)#輸出:["apple","banana","cherry","date","fig"]

#在指定位置插入一個元素
fruits.insert(2,"grape")
print(fruits)#輸出:["apple","banana","grape","cherry","date","fig"]

刪除元素:可以使用remove()方法刪除列表中的某個元素,使用pop()方法刪除列表中指定位置的元素,并返回被刪除的元素的值。例如:

fruits=["apple","banana","cherry","date"]

#刪除列表中的某個元素
fruits.remove("banana")
print(fruits)
輸出:["apple","cherry","date"]
刪除列表中指定位置的元素
removed_element=fruits.pop(1)
print("被刪除的元素是:",removed_element)#輸出:被刪除的元素是:cherry
print(fruits)#輸出:["apple","date"]

列表長度:可以使用len()函數獲取列表的長度,即列表中元素的個數。例如:

fruits=["apple","banana","cherry","date"]

#獲取列表的長度
print(len(fruits))#輸出:4

列表切片:可以通過切片(slicing)來獲取列表的子列表。切片使用冒號(:)表示,左邊界是包含的,右邊界是不包含的。例如:

fruits=["apple","banana","cherry","date"]

#獲取列表的子列表
print(fruits[1:3])#輸出:["banana","cherry"]

列表的實際應用

Python列表在實際應用中具有廣泛的用途,以下是一些示例:數據處理:列表可以用來存儲和處理大量數據,例如從文件或數據庫中讀取的數據,可以通過列表的各種操作來進行數據的篩選、排序、統計等。

#從文件中讀取數據到列表
withopen("data.txt","r")asf:
data=f.readlines()

#去除每行末尾的換行符
data=[line.strip()forlineindata]

#篩選出長度大于10的字符串
long_strings=[sforsindataiflen(s)>10]

#對列表進行排序
data.sort()

#統計列表中元素的個數
count=len(data)

數據可視化:列表可以作為存儲數據的容器,將數據傳遞給數據可視化庫,如Matplotlib或Seaborn,進行繪圖。

importmatplotlib.pyplotasplt

#生成示例數據
x=[1,2,3,4,5]
y=[10,8,6,4,2]

#繪制折線圖
plt.plot(x,y)
plt.xlabel("X軸標簽")
plt.ylabel("Y軸標簽")
plt.title("示例折線圖")
plt.show()

程序控制流程:列表可以用來管理程序的控制流程,例如通過循環遍歷列表中的元素執行一系列操作。

#處理用戶輸入
whileTrue:
user_input=input("請輸入操作(1.添加數據2.刪除數據3.退出):")
ifuser_input=="1":
#添加數據到列表
data=input("請輸入要添加的數據:")
my_list.append(data)
elifuser_input=="2":
#從列表中刪除數據
data=input("請輸入要刪除的數據:")
ifdatainmy_list:
my_list.remove(data)
else:
print("列表中不存在該數據。")
elifuser_input=="
"3":
#退出循環
print("程序已退出。")
break
else:
print("無效的輸入,請重新輸入。")

數據結構:列表作為一種基本的數據結構,可以用來構建更復雜的數據結構,如棧、隊列、鏈表等。

#棧:后進先出(LIFO)
stack=[]

#入棧
stack.append(1)
stack.append(2)
stack.append(3)

#出棧
print(stack.pop())#輸出:3

#隊列:先進先出(FIFO)
queue=[]

#入隊列
queue.append(1)
queue.append(2)
queue.append(3)

#出隊列
print(queue.pop(0))#輸出:1

#鏈表:動態數據結構,可以在任意位置插入和刪除元素
classListNode:
def__init__(self,val=0,next=None):
self.val=val
self.next=next

#創建鏈表
head=ListNode(1)
node1=ListNode(2)
node2=ListNode(3)

head.next=node1
node1.next=node2

#遍歷鏈表
current=head
whilecurrent:
print(current.val)
current=current.next

列表的注意事項

在使用列表時,需要注意以下幾點:列表是可變的:列表中的元素可以隨時被修改、添加或刪除,這意味著列表是可變的(mutable)。因此,在處理列表時需要注意原地修改(in-place modification)和創建新列表(creating a new list)之間的區別。

#原地修改
fruits=["apple","banana","cherry"]
fruits[1]="orange"

#創建新列表
fruits=["apple","banana","cherry"]
new_fruits=fruits+["date"]

列表索引從0開始:列表中的元素通過索引來訪問,索引從0開始。因此,在使用列表時需要注意索引的使用,避免越界錯誤(IndexError)。

fruits=["apple","banana","cherry"]

#正確的索引訪問
print(fruits[0])#輸出:apple

#錯誤的索引訪問
print(fruits[3])#報錯:IndexError:listindexoutofrange

列表的搜索效率較低:列表的搜索操作(如in、index()等)效率較低,因為需要逐個比較列表中的元素。如果需要頻繁進行搜索操作,可能需要考慮使用其他數據結構,如集合(set)或字典(dictionary)。

fruits=["apple","banana","cherry"]

#列表的搜索操作
print("orange"infruits)#輸出:False
print(fruits.index("cherry"))#輸出:2

列表的內存占用較大:由于列表是動態數組,需要在內存中預留足夠空間來存儲可能的元素,因此列表的內存占用較大。如果處理大量數據或需要優化內存占用的情況,可以考慮使用其他數據結構,如NumPy數組或Pandas數據框。

importnumpyasnp

#使用NumPy數組代替列表
arr=np.array([1,2,3,4,5])

#使用Pandas數據框代替列表
importpandasaspd
df=pd.DataFrame({"col1":[1,2,3],"col2":[4,5,6]})

列表的操作可能會引發錯誤:由于列表是可變的,對列表進行操作時可能會引發錯誤。例如,當多個變量引用同一個列表對象時,對列表的修改會影響所有引用該列表的變量。

#列表的錯誤操作
list1=[1,2,3]
list2=list1
list1.append(4)

print(list1)#輸出:[1,2,3,4]
print(list2)#輸出:[1,2,3,4],list2也被修改了

為了避免這種情況,可以使用列表的拷貝(copy)操作或使用其他數據結構來代替列表。

#使用列表的拷貝操作
list1=[1,2,3]
list2=list1.copy()
list1.append(4)

print(list1)#輸出:[1,2,3,4]
print(list2)#輸出:[1,2,3],list2不受影響

總結

Python列表是一種強大的數據結構,具有靈活性和易用性。它可以用于存儲和操作多個元素的集合,支持各種操作,如訪問、修改、添加、刪除等。同時,列表還可以作為基本數據結構,用于構建更復雜的數據結構,如棧、隊列、鏈表等。然而,在使用列表時,需要注意列表的可變性、索引從0開始、搜索效率較低和內存占用較大等特點,并避免可能的錯誤操作。如果需要處理大量數據或需要更高效的操作,可以考慮使用其他數據結構??偟膩碚f,掌握了Python列表的使用方法和注意事項,可以幫助開發者更加高效地處理和管理數據。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • python
    +關注

    關注

    56

    文章

    4797

    瀏覽量

    84689
  • 數據可視化
    +關注

    關注

    0

    文章

    466

    瀏覽量

    10260

原文標題:網絡工程師學Python-3-列表及其操作

文章出處:【微信號:網絡技術干貨圈,微信公眾號:網絡技術干貨圈】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    集成電路(IC)常用基本概念

    集成電路(IC)常用基本概念有:晶圓,多指單晶硅圓片,由普通硅沙拉制提煉而成,是最常用的半導體材料,按其直徑分為4英寸、5英寸、6英寸、8英寸等規格,近來發展出12英寸甚至更大規格.晶圓越大,同一
    發表于 01-11 13:52

    操作系統原理基本概念

    操作系統原理基本概念計算機硬件系統組成中央處理器中央處理器是計算機的運算核心(Core)和控制單元( Control Unit) ,主要包括:運算邏輯部件: 一個或多個運算器寄存器部件: 包括通用
    發表于 07-26 07:46

    如何使用Python列表進行求和?

    趣的概念編寫簡短的教程。[tr]目錄-Python列表[tr]使用SUM查找列表的和[tr]如何使用sum()函數?[tr]限制和洞穴-Pytho
    發表于 09-01 23:14

    振動的基本概念

    一、振動的基本概念1、振動的定義振動是有由于外力作用而引起的往返(周期)運動。振動特性:周期,頻率,幅值和振動波形,可用來描述振動信號的基本特征。物理參數:位移,速度和加速度是用來描述機器振動的三個
    發表于 09-16 06:16

    單片機中斷的基本概念

    文章目錄一.中斷的基本概念二.中斷相關的寄存器三.中斷的實際使用四.中斷的優點:一.中斷的基本概念1.中斷的概念:在單片機中,中斷是指:對于CPU來說,當它在正常處理事件A時,突然發生
    發表于 11-25 08:14

    電子商務基本概念操作

    電子商務基本概念操作 主頁(Home Page)是指個人或機構的基本信息頁面,用戶通過主頁可以訪問有關的信息資源。主頁通常是用戶使用WWW瀏覽器訪問Internet上任
    發表于 04-28 16:30 ?0次下載

    python基礎教程之python是什么?概念解析

    Python,是一種面向對象的解釋型計算機程序設計語言Python基礎教程本書包括Python程序設計的方方面面,首先從Python的安裝開始,隨后介紹了
    發表于 11-30 10:33 ?2277次閱讀
    <b class='flag-5'>python</b>基礎教程之<b class='flag-5'>python</b>是什么?<b class='flag-5'>概念</b>解析

    跳表的基本概念實際應用

    跳躍鏈表及其應用是非常熱門的問題,面試時也非常常問,深入了解其中奧秘大有裨益,不吹了,直接開始! 跳躍鏈表的基本概念 初識跳表 跳躍列表是一種數據結構。它允許快速查詢一個有序連續元素的數據鏈表。跳躍
    的頭像 發表于 09-02 10:45 ?2694次閱讀
    跳表的<b class='flag-5'>基本概念</b>和<b class='flag-5'>實際</b>應用

    如何運用Python列表的元素比較解決問題

    在用python處理多個列表元素時,需要處理的信息一般比較多且雜。這時運用Python列表元素比較的方法,就能快速處理列表信息,能更輕松訪問
    的頭像 發表于 02-17 15:04 ?738次閱讀
    如何運用<b class='flag-5'>Python</b><b class='flag-5'>列表</b>的元素比較解決問題

    python列表序列操作教程

    python列表也是序列對象,可以進行序列通用的操作,類似字符串序列的操作。
    的頭像 發表于 02-23 15:04 ?651次閱讀

    介紹python列表的邊界和嵌套

    本文介紹python列表的邊界和嵌套。只能訪問python列表范圍內的項,python列表可以嵌
    的頭像 發表于 02-27 14:49 ?940次閱讀

    python列表特定方法有哪些

    python列表類似其他語言的數組,但是python列表的元素(項)可以同時為不同類型的對象,即沒有固定類型約束。
    的頭像 發表于 02-27 14:51 ?495次閱讀

    python列表和數組的區別

    Python是一種功能強大的編程語言,為開發者提供了許多數據結構來處理和操作數據。其中,列表和數組是常用的數據結構,用于存儲和組織一系列元素。在本文中,我們將詳細比較
    的頭像 發表于 11-21 15:13 ?2410次閱讀

    python怎樣讓列表里的數相加

    Python是一種功能強大的編程語言,可以用于處理各種各樣的數學運算和數據操作。在Python中,我們可以使用簡單的代碼將列表中的數字相加。 首先,我們需要創建一個包含數字的
    的頭像 發表于 11-22 09:53 ?1961次閱讀

    python如何遍歷列表并提取

    遍歷列表Python中非常常見的操作之一,可以使用for循環或者while循環來實現。下面我將詳細介紹如何使用for循環遍歷列表并提取元素。 首先,讓我們簡單了解一下
    的頭像 發表于 11-23 15:55 ?1397次閱讀
    主站蜘蛛池模板: 骚黄视频| 黄色香蕉网站| 国产精品网址你懂的| 手机看片福利盒子| dyav午夜片| 四虎精品永久在线| 久久国产精品自在自线| 色婷婷久久综合中文久久蜜桃| 四虎国产精品高清在线观看| 黄色日本网站| 欧美四色| 劳拉淫欲护士bd字幕| 人与禽性视频77777| 午夜视频观看| 中文字幕一区二区三区永久| 色视频线观看在线播放| 最近免费hd| 一二三区在线视频| 日本三级日本三级人妇三级四| 一级片在线免费| 中文字幕在线观看一区二区三区| 色视频在线观看| 天天艹天天艹| 足控免费视频xxav| 黄色超污网站| 一起射综合网| 色多多18免费观看| 天天舔| 国产在线播放成人免费| 激情综合五月网| 在线91精品亚洲网站精品成人| 色综合天天综久久久噜噜噜久久〔 | 国产精品午夜高清在线观看| 亚洲1314| 色福利视频| 天堂在线bt| 亚洲综合成人在线| 成人久久久| 啪啪啦资源站永久| 四虎亚洲精品| 手机看片福利日韩国产|