文章目錄
1.元組
1.1創建一個元組
列表:打了激素的數組
元組:帶了緊箍咒的列表
不可變數據類型,沒有增刪改
可以存儲任意數據類型
1.2元組的常用方法
1.3元組的特性
1.3.1索引
1.3.2切片
1.3.3連接
1.3.4重複
1.3.5for循環
1.3.6成員操作符
1.4元組的應用場景
1.4.1變量的交換
1.4.2打印(print)
2.集合
2.1定義以一個集合
集合中的元素不會重複出現,而且他會在內存中對集合進行整理去重,但不是以重排序。
2.2 集合中常用的方法
2.2.1 自動整理
2.2.2 添加
2.2.3 刪除
2.2.4 排序
2.2.5 並集
2.2.6 交集
2.2.7 差集
2.2.8 對等差分
2.2.9 子集
2.2.10 兩集合是否不相交
2.3集合的特性
2.3.1 成員操作符
2.3.2 for循環
==注意:==不要忘記end的作用是結尾字符,我們將他設爲空,所以不會換行。
2.4 練習題
華爲機測題:
明明想在學校中請一些同學一起做一項問卷調查,爲了實驗的客觀性他先用計算機生成了N個1~1000之間的隨機整數(N<=1000),N是用戶輸入的,對於其中重複的數字,只保留一個,把其餘相同的數字去掉,不同的數對應着不同的學生的學號,然後再把這些數從小到大排序,按照排好的順序去找同學做調查,請你協助明明完成“去重”與排序工作
提示sorted()進行排序
方法一:
方法二:
3.python中常用的內置方法
3.1min求最小值
3.2max求最大值
3.3 sum集合求和
3.4 枚舉
3.5 zip配對
4.字典
4.1字典的定義
字典 key-value 鍵值對
4.1.1 工廠函數
4.1.2 字典的嵌套
4.2字典的特性
4.2.1 字典不支持切片
4.2.2 成員操作符
4.2.3 for循環遍歷字典
4.3 字典元素的增加
4.3.1 update
4.3.2 setdefault
4.4字典元素的刪除
4.4.1 清空字典內容
4.5 字典元素的查看
5. 深拷貝和淺拷貝的區別
當一個變量a=x的時候 約定爲:指向一個地址的過程
淺拷貝:copy.copy()
深拷貝:copy.deepcopy()
如果 copy.copy()拷貝的是元組 那麼它不會進行淺拷貝 僅僅是指向
因爲元組是不可變數據類型,意味着數據一定不能修改
因此它會自動判斷爲指向
6.生成式
6.1 列表生成式
6.2字典生成式
7.高階函數
高階函數
-實參是一個函數名
-函數的返回值是一個函數
7.1內置高階函數map
map():接收兩個參數,一個是函數 一個是序列
map將傳入的函數依次作用到序列的每個元素,並且把結果作爲新的序列返回
7.2 內置高階函數reduce
reduce():把一個函數作用在一個序列上,這個函數必須接收兩個參數
reduce把結果繼續和序列的下一個元素做累積計算
reduce(f,[x1,x2,x3,x4]) = f(f(x1,x2),x3),x4)
python2中:reduce是內置函數
python3:from functools import reduce
7.3內置高階函數filter
filter過濾函數
和map()類似的,也接收一個函數和一個序列
但是和map()不同的是,filter()把傳入的函數依次作用於
每個元素,然後根據返回值是True或者False決定保留還是丟棄該元素