day04 列表 元組 range

2022-08-20 20:18:16 字數 4622 閱讀 8531

列表——list

​ 有序,可變,支援索引

lst = ['alex',123,true] # 用逗號分割的是乙個元素

print(lst) # 結果是['alex',123,true]

print(lst[0])

print(id(lst[0]))

# id獲取物件的記憶體位址

lst[0] = "dsb"

print(lst) # ['dsb', 123, true, '黑哥']

# s = "alex" # 字串是不可變資料

# s = "wusir"

# s[0] = "b"

# print(s)

列表的增加

# print(lst)

insert()以後盡量不要使用(當資料量比較大的時候會影響效率)

# lst.insert(2,"wusir")  #插入  以後盡量不要使用(當資料量比較大的時候會影響效率)

# print(lst)

# lst.extend("可迭代的內容")  # 迭代新增

# print(lst)

列表的刪除
# del lst[0]  # 通過索引刪除

# print(lst)

# del lst[0:3] # 通過切片刪除

# print(lst)

# del lst[0:3:2] # 通過步長刪除

# print(lst)

# lst = ["dsb",123,"dsb",true,"黑哥"]

# lst.remove("dsb") # 移除 -- 通過元素名字進行刪除

# print(lst)

pop(0):可以指定索引刪除

ret = lst.pop(0) :可以返回被刪除的元素

# lst.pop()  # 彈 -- 預設刪除最後乙個

# print(lst)

# lst = ["dsb",123,true,"黑哥"]

# lst.pop(2) # 通過指定索引進行刪除

# print(lst)

# lst.clear()  #清空

# print(lst)

列表的改
lst = ['楊紫','高圓圓','劉亦菲','關曉彤']

lst[0] = '楊冪' # 通過索引修改

print(lst) *****

lst[0:3] = '你好美11111111' # 被迭代進來的,數字和布林值不行,主要是索引取得留下誰 :123456(不能執行) 1,2,3,4,5,6(可執行行) "123456"(可執行)

print(lst) # ['你','好','美',』1',....,'1','關曉彤']

lst[0:4:2] = '好嗨哦' # 執行錯誤

lst[0:4:2] = '好嗨' #後面的內容數量必須與切片的數量相等

print(lst) # ['好','楊紫','嗨','劉亦菲']

列表的查
# for 迴圈

# lst = ["dsb",123,"dsb",true,"黑哥"]

# for i in lst:

# print(i)

增刪改查的使用
lst = ['你', '好', '啦', '啊']

print(lst)

lst.insert(1, '牛一')

print(lst)

lst.extend('你好')

print(lst)

lst.pop(1)

print(lst)

lst.remove('牛')

print(lst)

lst1 = ['asd', 'dfg']

lst1.clear()

print(lst1)

lst[4] = '朱'

print(lst)

lst[0:4] = '12'

print(lst)

lst[0::2] = '36'

print(lst)

for i in lst:

print(i)

列表的巢狀

通過索引進行取值

不管什麼型別進行切片的時候獲取到的都是原資料型別

# a = lst[-1][-1][-2]

# print(a)

# 不管什麼型別進行切片的時候獲取都到都是源資料型別

# lst = [1,"alex","春生","小東北","渣弟",

# ["大黑哥",["常鑫",["自行車"],"大煎餅","掉井蓋","三金"],

# "馮強","海峰",["太白金星","女神","吳超",["肖鋒"]]]]

# print(lst[-1][1][1][0])

元組——tuple

有序,不可變,支援索引

元組(tuple)其實就是乙個不可以修改的列表

元組的查

for語句查

也可以用索引,可以用切片,也可以加步長,元組切片結果也是元組

元組不能進行修改,不可變

應用場景

元組用於儲存一些比較重要的資訊,元組在配置檔案中會使用,存放一些使用者密碼的時候

常量也是在配置檔案中使用

修改——一般不推薦

轉成列表再進行修改

# tu = (1,"alex",true,"大黑哥",[1,2,3])

# lst = [1,"alex",true,"大黑哥",[1,2,3]]

# print(tu)

# tu = (1,"alex",true,"大黑哥",[1,2,3])

# print(tu[0:6])

# for 迴圈

# for i in tu:

# print(i)

range——範圍

print(list(range(0,10))) 顧頭不顧尾

面試題

python3中range(0,10) 是乙個可迭代的物件,寫得是怎樣的列印的時候就是怎樣 :print(range(0,10)) # 結果是 range(0,10)

print(list(range(0,10)))# 結果是[0,1,2,3,4,5,6,7,8,9]
python2中 的 range 獲取到乙個列表

range(0,10) # 結果是[0,1,2,3,4,5,6,7,8,9]
xrange和python3中range是相似的,都是可迭代物件,返回結果是 range(0,10)

range 和切片一樣:range 第乙個是起始位置,第二個是終止位置,第三個是步長,步長預設為1,終止位置和切片一樣都是顧頭不顧尾,他們之間用逗號分開

print(list(range(1,10,3))) # 結果是 [1,4,7]

print(list(range(10,-2,-1))) # 結果是 [10,...,-1]

print(list(range(10))) # 結果是 [0,1,...,9]

作用:range #可以讓for迴圈數字

for i in range(55):

print(i) # 結果是列印 1到54

for i in range(100, 0, -1):

print(i)

# 使用for迴圈和range 列印 100 ~ 1

# for i in range(100,0,-1):

# print(i)

# for i in range(1,101,2):

# print(i)

# for i in range(0,101,2):

# print(i)

# for i in range(0,101,6):

# print(i)

range 不能和while一起使用

# 錯誤示例:

# while range(0,10):

# print(1)

while和for的比較
# lst = 

# flage = true

# while flage:

# name = input("請輸姓名:")

# if len(lst) == 3:

# flage = false

# print(lst)

# lst =

# for i in range(3):

# print(lst)

Day 04 陣列,元組,列表

for i in range 5 for j in range 5 print i,j import re def rm a 1 2 3 4 5 b a.replace print b rm a 1 2 3 4 5 b for i in a if i b i print b 列表裡任何東西都可以放入...

python學習Day04 列表

1 列表的索引 lst 1,2,3,4,5,6 print lst 0 獲取第乙個元素 lst 1 你好 改變列表中的值 2 列表的切片 lst 1,2,3,4,5,6 print lst 0 3 1,2,3 print 3 1,2,3 print 2 3,4,5,6 print 2 1 倒著取 3...

04 列表和元組

今日主要內容 1.什麼是列表 定義 能裝物件的物件 在python中使用來描述列表,內部元素用逗號隔開.對資料型別沒有要求 列表存在索引和切片.和字串是一樣的.2.相關的增刪改查操作 重點 新增 2.insert 位置,元素 插入指定元素到指定位置 刪除 1.pop index 根據索引刪除 2.r...