1. 程式人生 > >python-第一章總結

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個位元組