python筆記(列表 元組 字典和流程控制)

2021-10-05 17:11:49 字數 3009 閱讀 3743

python內建的三種常用資料結構:列表list、元組tuple、字典dict

列表和元組都可以按順序儲存元素,每個元素有自己索引。都可以通過

列表跟元組相比,列表可以修改,元組不可修改。

字典以key-value形式儲存資料。

列表是,元組是()

list1 = [1,2,3,4,5]

tuple1 = (1,2,3,4,5)

通過索引訪問,正序逆序。正序第乙個是0,逆序第乙個是-1

print(list1[1]) 

print(list1[-1])

#輸出2

5

子串行:可以使用索引獲取中間的一段,slice

完整語法如下:

[start:end:step]

start,end分別表示索引開始的元素和索引結束的元素,都可以使用正數和負數,負數表示從倒數開始。step表示步長。

列表和元組支援加法運算,加法的和是倆個列表或元組所包含的元素的總和。列表只能和列表加,元組只能和元組加。

列表和元組支援乘法運算,和證書執行乘法運算。就是把他們包含的元素重複n次(n為被乘的倍數)

in運算子:判斷列表或元組中是否存在某個元素

python內建了max()獲取最大值,min()獲取最小值,len()獲取列表或元組的長度。其中,max()、min()函式要求元組、列表的元素是相同型別且可以比較大小的。

序列封包和序列解包:

序列封包:程式把多個值賦給乙個變數時,python會自動將多個值封裝成元組。

序列解包:將元組或列表直接賦給多個變數時,序列的各元素將會被依次賦值給每個變數(變數數和序列的元素數相同)。。

列表:

追加extend()方法,追加所有元素

刪除del語句

remove()

修改列表元素

list1[1] = 5
count()方法:統計某個元素在列表**現的次數

index()方法:判斷某個元素在列表**現的位置

pop()方法:將列表當作棧使用,實現元素出棧功能

reverse()方法:將列表中元素反向存放

sort()方法:用於列表元素排序

字典:

可以使用dict()函式或者花括號建立字典。程式對字典的操作都是基於key的。元組可以做字典的key但列表不行。

clear()清空字典k-v對,變成空字典

get()根據key獲取value

update()若字典中原本沒有對應的key-value,增加;若原本有key-value,value值被覆蓋。

items()獲取字典的所有key-value對

keys()獲取字典的所有key

valuse()獲取字典的所有value

setdefault()根據key獲取value若不存在,先為key設定乙個預設value,再返回該value;若存在就直接返回value,不更改

流程控制:

if表示式、pass語句、assert斷言、while迴圈、for-in迴圈,迴圈else(while可以使用,for-in可以使用)、break結束迴圈、continue忽略本次迴圈剩下語句、return結束

zip()函式可以把兩個或多個列表壓縮成乙個zip物件,通過該函式可以使用乙個迴圈遍歷兩個或多個列表

繞圈圈:

覺得挺有趣的附上**。

#!usr/bin/env python3.6

#encoding:utf-8

'''author:shadow

datetime:2020/5/2

explain:

繞圈圈例子1:

1 8 7

2 9 6

3 4 5

例子2:

01 20 19 18 17 16

02 21 32 31 30 15

03 22 33 36 29 14

04 23 34 35 28 13

05 24 25 26 27 12

06 07 08 09 10 11

'''def draw(size):

#生成二維陣列

array = [[0]*size]

for i in range(size-1):

array += [[0]*size]

#方向0向下1向右2向上3向左

orient = 0

#j行索引,k列索引

j = 0

k = 0

for i in range(1,size*size+1):

array[j][k] = i

if j+k == size -1:

if j>k:

orient = 1

else:

orient = 2

elif (j==k)and (k>=size/2):

orient = 3

elif (j==k-1)and (k<=size/2):

orient = 0

if orient ==0:

j+=1

elif orient == 1:

k+=1

elif orient == 2:

k-=1

elif orient == 3:

j-=1

for i in range(size):

for j in range(size):

print("%02d"%array[i][j],end=" ")

print("",end="\n")

if __name__ == '__main__':

size = int(input("請輸入size的大小:"))

draw(size)

Python 列表 元組和字典

python三種內建的資料結構 列表 元組 字典 一 列表 list 表示方法 list 1,2,3,4 list 0 1 對列表內元素可進行增 刪 改 查等操作 list.insert index,value 指定索引前面插入乙個值 list.pop 從list中移除元素,預設最後乙個元素,並返回...

python學習筆記 列表,元組,字典

加到列表最末尾 直接加內容 2.insert 列表名.insert 內容 1 加到指定位置1 直接加內容 3.expend 列表名.expend 列表2 列表2合併到原來的列表中 4.號 列表1 列表2 會產生乙個新列表,包含列表1和列表2 不常用,佔記憶體 1.remove 列表名.remove ...

python學習筆記 列表元組字典

正向單索引 list1 0 負向單索引 list1 1 切片索引 左閉右開 list 0 6 list 1 6 2 list 3 1 無限索引 list 3 list 3 list list 2 list3.extend 20,200,2000,20000 list3.insert 6,a b c ...