1. 程式人生 > >Python3 爬蟲學習筆記、基礎、列表

Python3 爬蟲學習筆記、基礎、列表

建立檔案 base_3.py

#!/usr/bin/env python3
# 列表 感覺和陣列差不多 第一個索引是0,第二個索引是1...

# 定義一個列表
a=[1,2,3,'a','b','c']
print(a)
# 輸出第二個
print(a[1])
# 輸出第3-5
print(a[2:5])
# 刪除第4個
del a[3]
print(a)
b=['d','e','f']
# 拼接
a=a+b
print(a)
# 迴圈輸出 基本模式
for x in a:
  print(x)

# 迴圈輸出 條件模式
print([x*1 for x in a if isinstance(x,int) if int(x)>0])
# 
a=[1,2,3,4,5,6,7,8,9]
# 輸出最大
print('最大值 %r'%(max(a)))
# 輸出最小
print('最小值 %r'%(min(a)))
# 輸出長度
print('長度 %r'%(len(a)))
# 轉換
d=(1,2,3,4)
print(list(d))

# 定位插入
# 對於層疊列表,使用 insert 和 append 函式有一個非常特別之處,就是如果增加的是列表中的一個元素(子列表),則新增的元素初始只作為原元素的一個映象,這時候如果修改原元素(子列表)中的一個子元素,則新增元素同樣變化,修改新元素中的子元素也是如此。
a=[[0,1],[1,2],[2,3]]
a.insert(2,a[1])
print (a)
a.append(a[3])
print (a)
a[1][1]=0
a[4][1]=4
print(a)
# 如果想只修改其中一個元素(子列表),必須把該子列表完整定義一遍,如在上述程式碼後增加。 PS 沒有測試出來,還好用的少,鬱悶
print('重來 只改一個')
a=[[0,1],[1,2],[2,3]]
a.insert(2,a[1])
print (a)
a.append(a[3])
print (a)
b=a
b[1]=[5,5]
print (a)
b[1][1]=0
b[4][1]=4
print(b)

執行結果

其他方法,記個名稱 用到了再說

1        list.append(obj)    在列表末尾新增新的物件
2        list.count(obj)        統計某個元素在列表中出現的次數
3        list.extend(seq)    在列表末尾一次性追加另一個序列中的多個值(用新列表擴充套件原來的列表)
4        list.index(obj)        從列表中找出某個值第一個匹配項的索引位置
5        list.insert(index, obj)    將物件插入列表
6        list.pop([index=-1])    移除列表中的一個元素(預設最後一個元素),並且返回該元素的值
7        list.remove(obj)    移除列表中某個值的第一個匹配項
8        list.reverse()        反向列表中元素
9        list.sort( key=None, reverse=False)    對原列表進行排序
10      list.clear()        清空列表
11      list.copy()        複製列表

 

字典 PS:先用定義佔個位,用到了再來補充

字典是另一種可變容器模型,且可儲存任意型別物件。

字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中 ,格式如下所示:

d = {key1 : value1, key2 : value2 }

字典值可以是任何的 python 物件,既可以是標準的物件,也可以是使用者定義的,但鍵不行。

兩個重要的點需要記住:

1)不允許同一個鍵出現兩次。建立時如果同一個鍵被賦值兩次,後一個值會被記住

2)鍵必須不可變,所以可以用數字,字串或元組充當,而用列表就