純凈、安全、綠色的下載網站

首頁

當前位置:首頁IT學院IT技術

Python中的List 詳解Python中的List

雷學委   2021-12-15 我要評論
想了解詳解Python中的List的相關內容嗎,雷學委在本文為您仔細講解Python中的List的相關知識和一些Code實例,歡迎閱讀和指正,我們先劃重點:Python,Python?List,下面大家一起來學習吧。

什么是list?

list 是一個序列!一串數據,這個串可以追加數據。

我們可以把它看成大型商場內,兒童游玩串串車,它就像一趟一趟車廂一樣,可以掛上去(還能增加車廂)。

這樣tuple(元組)就是焊死了的串串車!

在數據結構中,我們也學習過鏈表,某種程度上list就是python給出的一個實現。

它可以無限的存放數據,并通過下標(從0開始計數)獲取特定位置的元素。

說這么多我們看看代碼,感受一下:

list_a = [1, 2, 3]
list_b = ['hello','lei','學委', 666]

上面就是python中的list。

list 可以進行哪些操作呢?

我們前面tuple試過 + 和 *, 這些list能做嗎?

答案是肯定的。

這里學委復制了前面tuple的代碼進行更改:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/31 10:36 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學委
# @XueWeiTag: CodingDemo
# @File : list_demo.py
# @Project : hello
a = [1, 2, 3]
print(a[0])
t = list(a)
print(t[0:2])
print(type(t[0:2]))
# <class 'list'>
t[0] = 22 # list可以修改對應下標的值!
a[0] = 22
mylist = list([a, [2, 3]])
print(mylist)
([22, 2, 3], [2, 3])
mylist[0][0] = 100 #這個可以!真可以!
print(mylist)
print(type(mylist))

動態長度參數傳遞

def show_info_v2(name, title, *info):
    print("姓名為:", name)
    print("職稱為:", title)
    print("其他評價:", info)
show_info_v2('雷學委', '搬磚大師', "熱愛技術", "熱愛生活")

參數是否會被函數攥改?

我們看看下面的程序即可:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/24 11:39 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學委
# @XueWeiTag: CodingDemo
# @File : func_call.py
# @Project : hello
def compute_v1(list):
    sum = 0
    for x in list:
        sum += x
    list = list + [sum]
    print("新地址:", id(list))
    return sum
def compute_v2(list):
    sum = 0
    for x in list:
        sum += x
    list[0] = list[0] * 100
    return sum
_list = [1, 2, 3, 4, 5]
print("調用計算函數v1之前:", _list)
print("調用計算函數v1之前內存地址:", id(_list))
print(compute_v1(_list))
print("調用計算函數v1之后:", _list)
print("調用計算函數v1之后內存地址:", id(_list))
_list = [1, 2, 3, 4, 5]
print("調用計算函數v2之前:", _list)
print("調用計算函數v2之前內存地址:", id(_list))
print(compute_v2(_list))
print("調用計算函數v2之后:", _list)
print("調用計算函數v2之后內存地址:", id(_list))

這是代碼運行效果:

我們是可以修改list的元素的。

list 這種對象能執行啥操作?

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/31 10:36 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學委
# @XueWeiTag: CodingDemo
# @File : list_demo2.py
# @Project : hello
list = [3, 3, 3]
# new_list = list - list #TypeError: unsupported operand type(s) for -: 'listle' and 'listle'
new_list = list + list
print(new_list)
# 學委還是很喜歡三連的,666
new_list = list * 3
print("三連開光過的list:", new_list)
# new_list = list / 3 # 不支持下次一定??!
print("'666' in new_listle ? ", '666' in new_list)

下面是運行效果:

可以看到,我們之前在tuple中的操作list也一一支持了。

tuple 轉list

直接上代碼:

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2021/10/31 10:36 下午
# @Author : LeiXueWei
# @CSDN/Juejin/Wechat: 雷學委
# @XueWeiTag: CodingDemo
# @File : list_demo2.py
# @Project : hello
mylist = [3, 3, 3]
new_list = [x * 2 for x in mylist]
print("加倍過的list:", new_list)
# 從這里開始展示tuple 轉list
tup = (6, 6, 6)
new_list = list(tup)
print("把list轉list: ", new_list)
if 6 in new_list:
    print("new_list has 6 !")

說這么多,好像漏了點啥?遍歷列表還沒有展示呢。

這個非常簡單,隨手就來

list = [ 1, 2, 3]
for x in list:
    do_on_value(x)

就這樣,其實上面的展示代碼涵蓋了,但是沒有特別說出來。

就是這一句 ‘new_list = [x * 2 for x in mylist]' , 直接遍歷列表并把每個函數的值都x2生成的元素構成新列表。

總結

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注的更多內容!


相關文章

猜您喜歡

  • Python中的List 詳解Python中的List2

    想了解詳解Python中的List2的相關內容嗎,雷學委在本文為您仔細講解Python中的List的相關知識和一些Code實例,歡迎閱讀和指正,我們先劃重點:Python,PythonList,下面大家一起來學習吧。..
  • Python逐行讀取文本文件 Python怎樣實現逐行讀取文本文件

    想了解Python怎樣實現逐行讀取文本文件的相關內容嗎,IT孔乙己在本文為您仔細講解Python逐行讀取文本文件的相關知識和一些Code實例,歡迎閱讀和指正,我們先劃重點:Python?讀取文件,Python讀取文本文件,Python逐行讀取文本文件,下面大家一起來學習吧。..

網友評論

Copyright 2022 版權所有 軟件發布

聲明:所有軟件和文章來自軟件開發商或者作者 如有異議 請與本站聯系 聯系我們

无限资源第一页免费看_欧美性性享受在线观看_久久人人97超碰CaOPOren_亚洲欧洲AV无码专区2