Python Python 學習記錄(1)

2022-01-29 01:38:59 字數 2606 閱讀 4683

1.概論

弱型別 乙個變數能被賦值時能與原型別不同 

x = 1

x = "1"  #不加分號,給x賦值為int後再次賦值為string是可行的

與或非 and or not

/  #除法的結果是浮點數, 9 / 3 = 3.0

// #結果是整數 10 // 3 = 3

空值為none(相當於null)

內建型別  numbers(整數和浮點數), strings,lists

print('') 

print("%%") #%  字串列印單引號和雙引號皆可

print(r'c:\users\local')  #c:\user\local raw 表示不轉義 相當於c#中@

字串跨多行

print(''' 內容

內容''') 

'''內容'''

2.字串

字元編碼

ascii 使用乙個位元組 包含127個編碼 (大小寫英文、數字、特殊符號)

unicode 使用兩個位元組表示乙個字元 (偏僻的使用4個位元組)

utf-8(8-bit unicode transformation format) 針對unicode的可變長編碼

屬於ascii的字元用乙個位元組,漢字使用兩個位元組編碼 完全相容ascii

計算機記憶體中統一使用unicode編碼,需要儲存或傳輸時轉換為utf-8編碼

ord() #取字元的整數表示

chr() #把編碼轉換為字元

print('\u4e2d\u6587') #中文 

x = b'abc' #x為bytes 乙個字元占用乙個位元組

x = 'abc'  #x為str

字串編碼(bytes str互轉)

str->bytes 'str'.encode('ascii')  # utf-8

bytes->str b'str'.decode('ascii')

字串格式化

'%d,%f,%s,%x' % (2333,3.14,'python str',0x23)

'%2d-%02d' %(3,1)   #3-01

'%.2f' % 3.1415  #3.14

字串可以用 + 連線

用 * 用來重複字串 3 * 'a' #aaa

print('a' 'b')   #ab 這樣a和b會自動連線起來,少寫個 + 

word = 'python' 

print(word[0])  #p

print(word[-1])   #n 倒數第乙個

word[0:2]   #py

word[2:5]   #tho

word[:2]     #py

word[4:]     #on

word[-2:]    #word[-2] + word[-1] on

字串有不可變性 word[0] = 'a' 會報錯

3.list 

x = [1, 2, 3, 4]

和字串一樣index用起來比較方便

x[0] #1

x[1:2] #[2, 3]

x[-2:] #[3, 4]

y = [4, 5, 6, 7]

x + y  #[1, 2, 3, 4, 5, 6, 7]   集合的並操作

tuple 

與list型別,但其中的元素不可變

4.分片

有點matlab的感覺

l = [1,2,3]

l[0:2]  l[0] l[1]

l[1:]  #l[1] 到最後乙個元素 或者寫成l[1:-1]

l[-1] 最後乙個元素

l[:10:2] #前10個數,每兩個取乙個 [0,2,4,6,8]

5.map() & reduce()

map(func, [1,2,3])

將[1,2,3]中每個元素作為引數執行一次func

reduce(func, [1,2,3])

func(func(1,2),3)

練習解答

輸入:['adam', 'lisa', 'bart'],輸出:['adam', 'lisa', 'bart']

def

normalize(name):

first =name[0].upper()

for i in name[1:]:

first = first +i.lower()

return

first

l1 = ['

adam

', '

lisa

', '

bart']

l2 =list(map(normalize, l1))

print(l2)

6. filter()

filter(func,[1,2,3,4])

和map類似,以每個元素為引數呼叫func,返回為ture的保留,否則丟棄

sorted([2,3,4,5,6,7],key = comparer, reverse = false)

傳乙個比較方法即可快速實現排序

參考鏈結

字串和編碼-廖雪峰的官方**

Python python 爬蟲學習

response requests.get response.content.decode utf 8 返回bytes型別 decode解碼 response.text request.encoding gbk 修改編碼 返回str型別 獲取 狀態碼 response.status code 響應頭...

Python Python基礎學習筆記

最近對python比較感興趣,就去學習了一下,發現跟c 包括c都有很多相似的地方,但是也有一些不一樣的地方,python語言真的是非常的簡潔,下面就將我這幾天學習的內容總結一下。隨時擴充 python的應用方向也非常的廣泛,包括資料分析方向的資料建模 資料探勘 資料視覺化 商業分析,資料採集方面的網...

csv在python Python學習csv的使用

encoding utf8 csv的使用 import csv document sample.csv 定義好頭部 headers class name height year 定義好每行的內容 rows 1,xiaoming male 168,23 1,xiaohong female 162,22...