python-第一章總結
一、資料型別
1、列表:
# 列表中的每個元素都是可變的
# 列表的元素是有序的,
# 列表用中括號表示
ab = [ ]
# ab.insert(‘位置’,‘元素‘) ## 在指定位置插入某個元素
# ab.append() # 在末尾增加元素
# ab.remove(1) # 刪除‘1‘這個元素
# ab.pop() # 預設刪除列表中最後一個元素
# del ab[0:2] # 按照指定位置刪除列表中的元素
# ab[1 ] = ‘xxx’ # 更改索引為1的位置的元素
# ab.index() # 獲取元素的下標
# ab.count() # 獲取元素出現的次數
# 字串轉列表
eg: s = 'sryrdhgdfgdg'
new_s = list(s)
print(new_s)
2、字典:
# 以鍵值對的形式出現
# 鍵不能重複,值可以重複
# key不可變,也無法修改 value是可變的,可以修改
# 以大括號表示
ab = { ‘abc’:1,‘cde’:2 }
ab.key() # 列印所有key
ab.values() # 列印所有value
ab.items() # 字典轉列表
ab.update() # 擴充套件
ab.setdefault() #建立一個新的Key:value對,如果當前字典存在key就返回當
前的value,否則建立
ab.fromkeys() 批量生產一批Key:value的鍵值對
# 增加:
ab = {'rtg':[20,'nan','wuhan'],}
ab['nhy'] = [20,'y','北京']
print (ab)
# 刪除:
ab.pop(‘rtg’) # 刪除元素,不存在及報錯
ab.get() # 查詢,不存在也不會報錯
3、元祖:
# 就是不可變的列表,可以查詢,不可修改。
4、集合:
# 集合是無序的
# 天然去重
ab = {1,2,3,4 }
ab.add(5 ) # 新增元素
ab.discard(5) # 刪除元素
ab.update() # 合併集合
ab.pop() # 刪除某個元素
ab.remove() # 刪除某個值,如果這個值不存在會報錯
二、條件判斷及迴圈
(1)if else
(2)while
n = 0
while n<10:
n += 1
print(n)
(3)for x in xxx
names = [‘yao’,’prng’,’wuan’]
for name in names
print(name)
## 這裡需要注意
(1)、break 在迴圈過程中直接退出迴圈
(2)、continue 提前結束本輪迴圈,開始下一輪迴圈
(3)、pass # 佔位符
三、其餘部分字串用法
# s.split() 以某個字元分割字串,並以列表的形式儲存
# isdigit # 判斷是否是數字
# strip() # 清除頭尾的空格
# replace # 替換
# s.upper # 大寫
# s.lower # 小寫
# s.count() # 統計扣個字元出現的次數
# s.join() # 在字串中,按照指定元素進行分割
eg: test = "我是好人"
print(test)
t = ' '
v = t.join(test)
print(v)
#find('元素',起始,結束) 找不到的話返回-1
eg: s = 'Yaopengfei'
s8 = s.find('Peng',3,7)
print(s8,type(s8))
四、編碼問題
1、ASCii 佔用一個位元組,只支援英文
2、GB2312 佔用2個位元組,支援6700+漢字
3、GBK 升級版的2312 支援21000+漢字
4、unicode 2-4位元組,
(1)、支援全球所有語言,編碼統一
(2)、包含和全球所有各自的編碼的對映關係
本地使用使用unicode沒問題,因為本地計算機記憶體大,不care。但儲存和網路傳輸時資料一多,佔用多了一倍就有問題了
為了解決這個問題,UTF就誕生了,既對unicode的轉換
utf-8 可變長編碼,使用1-4個字元,英文是1個字元,歐洲2個位元組,中文3個位元組,其餘特殊的就是4個位元組