一起來(lái)學(xué)習(xí)Python的列表
列表更多的方法
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,否則返回Falsenot in:判斷指定數(shù)據(jù)不在某個(gè)列表序列,如果不在返回True,否則返回Falseappend():列表結(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ù)
總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
如何使用python實(shí)現(xiàn)模擬鼠標(biāo)點(diǎn)擊
這篇文章主要介紹了如何使用python實(shí)現(xiàn)模擬鼠標(biāo)點(diǎn)擊,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-01-01
如何利用Python快速繪制海報(bào)級(jí)別地圖詳解
Python之所以這么流行,是因?yàn)樗粌H能夠應(yīng)用于科技領(lǐng)域,還能用來(lái)做許多其他學(xué)科的研究工具,最常見(jiàn)的便是繪制地圖,這篇文章主要給大家介紹了關(guān)于如何利用Python快速繪制海報(bào)級(jí)別地圖的相關(guān)資料,需要的朋友可以參考下2021-09-09
解決Pycharm 運(yùn)行后沒(méi)有輸出的問(wèn)題
這篇文章主要介紹了解決Pycharm 運(yùn)行后沒(méi)有輸出的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-02-02
利用python調(diào)整Excel行高和列寬的操作示例
在Excel中,默認(rèn)的行高和列寬可能不足以完全顯示某些單元格中的內(nèi)容,特別是當(dāng)內(nèi)容較長(zhǎng)時(shí),通過(guò)調(diào)整行高和列寬,可以確保所有數(shù)據(jù)都能完整顯示,避免內(nèi)容被截?cái)?本文將介紹如何通過(guò)Python調(diào)整Excel的行高列寬、或設(shè)置自適應(yīng)行高列寬,需要的朋友可以參考下2024-11-11
Python求區(qū)間正整數(shù)內(nèi)所有素?cái)?shù)之和的方法實(shí)例
這篇文章主要給大家介紹了Python對(duì)區(qū)間正整數(shù)內(nèi)所有素?cái)?shù)之和的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
Python實(shí)現(xiàn)二叉排序樹(shù)與平衡二叉樹(shù)的示例代碼
樹(shù)表查詢即借助具有特殊性質(zhì)的樹(shù)數(shù)據(jù)結(jié)構(gòu)進(jìn)行關(guān)鍵字查找,本文所涉及到的特殊結(jié)構(gòu)性質(zhì)的樹(shù)包括:二叉排序樹(shù)、平衡二叉樹(shù)。文中詳細(xì)介紹了二者的實(shí)現(xiàn)代碼,需要的可以參考一下2022-04-04
基于Python實(shí)現(xiàn)條形碼圖片識(shí)別程序
這篇文章主要為大家詳細(xì)介紹了如何基于Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的條形碼圖片識(shí)別程序,可以視頻圖片中的條形碼,感興趣的小伙伴可以跟隨小編學(xué)習(xí)一下2023-09-09
基于Python編寫(xiě)詞云軟件并顯示分詞結(jié)果
這篇文章主要為大家詳細(xì)介紹了如何基于Python編寫(xiě)一個(gè)簡(jiǎn)單的詞云制作軟件并顯示分詞結(jié)果,文中的示例代碼講解詳細(xì),具有一定的學(xué)習(xí)價(jià)值,感興趣的小伙伴可以了解一下2023-10-10

