溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python的列表方法有哪些

發(fā)布時(shí)間:2022-03-22 09:01:40 來(lái)源:億速云 閱讀:129 作者:iii 欄目:開(kāi)發(fā)技術(shù)

本文小編為大家詳細(xì)介紹“Python的列表方法有哪些”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“Python的列表方法有哪些”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來(lái)學(xué)習(xí)新知識(shí)吧。

列表更多的方法

  • index():返回指定數(shù)據(jù)所在位置的下標(biāo) (注意:如果查找的數(shù)據(jù)不存在則報(bào)錯(cuò)。)。

  • count():統(tǒng)計(jì)指定數(shù)據(jù)在當(dāng)前列表中出現(xiàn)的次數(shù)。

  • len():訪問(wèn)列表?度,即列表中數(shù)據(jù)的個(gè)數(shù)。

  • in:判斷指定數(shù)據(jù)在某個(gè)列表序列,如果在返回True,否則返回False

  • not in:判斷指定數(shù)據(jù)不在某個(gè)列表序列,如果不在返回True,否則返回False

  • append():列表結(jié)尾追加數(shù)據(jù)。

  • extend():列表結(jié)尾追加數(shù)據(jù),如果數(shù)據(jù)是?個(gè)序列,則將這個(gè)序列的數(shù)據(jù)逐?添加到列表。

  • insert():指定位置新增數(shù)據(jù)。

  • pop():刪除指定下標(biāo)的數(shù)據(jù)(默認(rèn)為最后?個(gè)),并返回該數(shù)據(jù)。

  • remove():移除列表中某個(gè)數(shù)據(jù)的第?個(gè)匹配項(xiàng)。

  • clear():清空列表

  • 逆置:reverse()

  • 排序:sort()

  • copy()

def generateRandomList(a, b, n, random_state):
    from random import randint, seed
    seed(random_state)
    ls = []
    for i in range(n):
        ls.append(randint(a, b))
    return ls
ls = generateRandomList(0, 100, 10, 666)
print(ls)  # [58, 48, 55, 36, 64, 1, 70, 70, 99, 91]
# index():返回指定數(shù)據(jù)所在位置的下標(biāo) (注意:如果查找的數(shù)據(jù)不存在則報(bào)錯(cuò)。)。
print(ls.index(55)) # 2
print(ls.index(70)) # 6
print(ls.index(70, 7, 9)) # 7
# print(ls.index(101)) ValueError: 101 is not in list
# - count():統(tǒng)計(jì)指定數(shù)據(jù)在當(dāng)前列表中出現(xiàn)的次數(shù)。
print(ls.count(70)) # 2
print(ls.count(58)) # 1
print(ls.count(666)) # 0
# - len():訪問(wèn)列表?度,即列表中數(shù)據(jù)的個(gè)數(shù)。 len還可以使用在字符串/元組/字典等數(shù)據(jù)中
print(len(ls))
# 使用len進(jìn)行列表遍歷
for i in range(len(ls)):
    print(ls[i])
for x in ls:
    print(x)
# 自己實(shí)現(xiàn)index方法
def my_index(ls, val):
    for i in range(len(ls)):
        if ls[i] == val:
            return i
    return -1
print("myindex = ", my_index(ls, 70))
print("myindex = ", my_index(ls, 101))
# - in:判斷指定數(shù)據(jù)在某個(gè)列表序列,如果在返回True,否則返回False
#- not in:判斷指定數(shù)據(jù)不在某個(gè)列表序列,如果不在返回True,否則返回False
print(69 in ls)
print(70 in ls)
print(70 not in ls)
print(69 not in ls)

#- append():列表結(jié)尾追加數(shù)據(jù)。
#- extend():列表結(jié)尾追加數(shù)據(jù),如果數(shù)據(jù)是?個(gè)序列,則將這個(gè)序列的數(shù)據(jù)逐?添加到列表。
# insert():指定位置新增數(shù)據(jù)。
hero_ls = []
hero_ls.append("魯班七號(hào)")
hero_ls.append("妲己")
hero_ls.append(123)
print(hero_ls)
hero_ls.insert(1, "校領(lǐng)導(dǎo)")
hero_ls.insert(1, "校領(lǐng)導(dǎo)夫人")
print(hero_ls)
hero_ls.extend("BBQ")
print(hero_ls)
hero_ls.extend(['瑤', '暃'])
hero_ls.extend(['123'])
print(hero_ls)
#- pop():刪除指定下標(biāo)的數(shù)據(jù)(默認(rèn)為最后?個(gè)),并返回該數(shù)據(jù)。
#- remove():移除列表中某個(gè)數(shù)據(jù)的第?個(gè)匹配項(xiàng)。
#- clear():清空列表
print(hero_ls.pop())
print(hero_ls.pop())
print(hero_ls.pop(1))
print(hero_ls)
hero_ls.remove('妲己')
print(hero_ls)
hero_ls.clear()
print(hero_ls)
# del hero_ls
# print(hero_ls)
# - 逆置:reverse()
lss = [1, 2, 3, 4, 5]
lss.reverse()
print(lss)
# - 排序:sort()
print(ls)
ls.sort()
print(ls)
ls.sort(reverse=True)
print(ls)
# - copy()
nls = lss.copy()
print(nls)
print(nls)

列表的嵌套

列表中還有列表, 可以表示數(shù)學(xué)中的矩陣

name_list = [['?明', '?紅', '?綠'],
             ['Tom', 'Lily', 'Rose'],
             ['張三', '李四', '王五']]
print(name_list[1])
print(name_list[1][0])

練習(xí)

# 設(shè)計(jì)一個(gè)函數(shù), 生成 n 行的 直角三角形 **, 存儲(chǔ)到列表中返回
def generate(n):
    total_ls = []
    for i in range(n):
        ls = []
        for j in range(i+1):
            ls.append('* ')
        total_ls.append(ls)
    return total_ls
print(generate(6))
for row in generate(6):
    for v in row:
        print(v, end='')
    print()
## 設(shè)計(jì)一個(gè)發(fā)等額紅包的函數(shù)
def send1(money, count):
    money*=100 #分
    m = money//count  # 每一份的金額
    l = money%count
    bag = []
    for i in range(count-1):
        bag.append(m/100)
    if l == 0:
        bag.append(m/100)
    else:
        bag.append((m+l)/100)
    return bag
print(send1(100, 3))
## 設(shè)計(jì)一個(gè)發(fā)手氣紅包的函數(shù)
def send2(money, count):
    money *= 100  # 分
    from random import randint
    bag = []
    for i in range(count - 1):
        m = money // count
        cur = 2*randint(0, m-1)
        money -= cur
        bag.append(cur/100)
    bag.append(money/100)
    return bag
print(send2(100, 3))
print(sum(send2(100, 3)))
## 設(shè)計(jì)一個(gè)搶紅包的函數(shù)

讀到這里,這篇“Python的列表方法有哪些”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識(shí)點(diǎn)還需要大家自己動(dòng)手實(shí)踐使用過(guò)才能領(lǐng)會(huì),如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI