python基礎自學 第五天(附帶視訊和相關資源)
阿新 • • 發佈:2019-02-11
資料型別
01.列表
- List 是 python 中使用最頻繁的資料型別,在其他語言中叫做陣列
- 專門用於儲存一串資訊
- 列表用 [ ] 定義,資料之間用 , 分隔
- 列表的索引從 0 開始
補:索引就是資料在列表中的位置編號,索引又可以被稱為下標
sorted()對列表進行臨時排序。
name_Lise = ["zhangsan", "lisi", "wangwu"]
# 取值和取索引
# list index out of range 列表索引超出範圍
# print(name_Lise[3])
print(name_Lise[2 ])
# 直到資料的內容.想知道資料在列表中的位置
# 如果內容不再數列表中,程式會報錯
print(name_Lise.index("lisi"))
# 修改
name_Lise[1] = "李四"
# list assignment index out of range 表索引超出範圍
# name_Lise[3]="wangxianger"
# 增加
# append 在列表末尾增加資料
name_Lise.append("王小二")
# insert 在指定的位置插入資料
name_Lise.insert(1,"小小")
# extend 把另外一個列表的完整內容追加到列表末尾
tmp_list=["小明","小工","小王"]
name_Lise.extend(tmp_list)
# 刪除
# remove 可以從列表中刪除指定的資料
name_Lise.remove("小工")
# pop 方法預設把列表最後一個元素刪除
name_Lise.pop()
# pop 方法可以指定要刪除的資料
name_Lise.pop(3)
# clear 方法可以清空列表
name_Lise.clear()
print(name_Lise)
name_Lise = ["zhangsan", "lisi", "wangwu", "lisi", "lisi"]
# 統計
# len ( length 長度) 函式可以統計列表中的元素總數
lis=len(name_Lise)
print(lis)
# count 方法可以統計列表中某一個數據出現的次數
count= name_Lise.count("lisi")
print(count)
# 同一個資料多次出現,從列表中刪除第一次出現的資料,如果程式不存在報錯
name_Lise.remove("lisi")
print(name_Lise)
name_Lise = ["zhangsan", "lisi", "wangwu", "lisi", "lisi"]
num_list = [6, 8, 4, 1, 10]
# 升序 sort()
name_Lise.sort()
num_list.sort()
# 降序
name_Lise.sort(reverse=True)
num_list.sort(reverse=True)
# 逆反(反轉)
name_Lise.reverse()
num_list.reverse()
print(name_Lise)
print(num_list)
補: del 關鍵字
本質上是用來將一個變數從記憶體中刪除
後續的程式碼就不能再使用這個變量了
例1:
name_Lise = ["zhangsan", "lisi", "wangwu"]
del name_Lise[1]
例2:
name = "小明"
del nama
執行會提示沒有 name 這個變數
迴圈遍歷
遍歷就是從頭到尾一次從列表中獲取資料
在python 中為了提高列表的遍歷效率,專門提供了 迭代 iteration 遍歷
例:
name_Lise = ["zhangsan", "lisi", "wangwu","dsaf"]
# 使用迭代遍歷列表
"""
順序的從列表中獲取資料,每一次迴圈過程中,資料都會儲存
在name 這個變數中,在迴圈體內部可以訪問到這次獲得的資料
"""
for name in name_Lise :
print(name)
補:
python的列表中可以儲存不同型別的資料,
列表儲存一般都是相同的資料
02.元祖
- Tuple 元祖於列表類似,不同之處在於元祖的元素不能修改
- 定義元祖 () 定義
- 元祖的索引從 0 開始
- 元祖一旦定義完成不能進行增刪改查
- 元祖表示多個元素組成的序列
補: 定義只有一個元素的元祖,要在單獨資料後面加逗號(,)
int_tuple = (5 , )
元祖常用操作
info_tuple=("zhangsan",18,1.75,"zhangsan")
# 取值和取索引
print(info_tuple[0])
# 已經知道資料的內容,希望知道資料在元祖中的索引
print(info_tuple.index("zhangsan"))
# 資料統計
print(info_tuple.count("zhangsan"))
# 統計元祖中包含的個數
print(len(info_tuple))
迴圈遍歷
實際開發中,除非能夠確認元祖中的資料型別,否則針對元祖的迴圈遍歷需求不是很多
info_tuple=("zhangsan",18,1.75,"zhangsan")
for ii in info_tuple :
# 使用格式字串拼接不方便,使用佔位符不同
# 元祖通常儲存的資料型別是不同的
print(ii)
元祖和列表的轉換
使用 list 函式可以吧元祖轉換成列表
list(元祖)
使用 tuple 函式可以把列表轉換成元祖
tuple(列表)
03 字典
是除了列表以外最靈活的資料型別
字典用 {} 定義
使用鍵值對儲存資料,鍵值之間使用 , 分割
- 鍵key 是索引
- 值value 是資料
- 鍵和值之間使用 : 分隔
- 鍵必須是唯一的
- 值可以去任何資料型別,但鍵只能使用字串,數字,和元祖
字典和列表的區別
- 列表是有序的物件集合
- 字典是無序的物件集合
xiaoming = {"name": "小明"}
# 取值
print(xiaoming["name"])
# 增加
xiaoming["age"] = 18
# 修改
xiaoming["age"] = 15
# 刪除
xiaoming.pop("name")
print(xiaoming)
xiaoming={"name":"小明","age":18,"gede":"發多少"}
# 統計鍵值對數量
print(len(xiaoming))
# 合併字典
tepp={"gheh":1.44}
# 如果被合併的字典中包含已經存在過的鍵值對,會覆蓋
xiaoming.update(tepp)
# 清空字典
xiaoming.clear()
print(xiaoming)
字典的遍歷
xiaoming={"name":"小明","age":18,"gede":"發多少"}
# 變數 zi 是每一次迴圈中,獲取到的鍵值對的KEY
for zi in xiaoming :
print("%s - %s"%(zi,xiaoming[zi]))
04 字串
- 字串就是一串字元,是程式與驗證中表示文字的資料型別
- python可以使用一對雙引號或者一對單引號
- 可以使用索引獲取一個字串中指定位置的字元,索引從0開始
- 可以使用for迴圈遍歷字串
補:
len(字串) : 獲取字串的長度
字串.count(字元): 字元在字串中出現的次數
holle_str="hello hello"
# 統計字串的長度
print(len(holle_str))
# 統計字元在字串中出現的次數
print(holle_str.count("h"))
# 某個字元出現的位置
print(holle_str.index("o"))