1、python列表和元祖
python包含6中內建的序列,即列表、元組、字串、unicode字串、buffer物件和xrange物件。通用序列操作:索引、分片、序列相加(+)、乘法(*)、成員資格(in)、長度(len)、最小值(min)和最大值(max)
2、python字典(花括號)
字典是另一種可變容器模型,且可儲存任意型別物件。字典的每個鍵值(key=>value)對用冒號(:)分割,每個對之間用逗號(,)分割,整個字典包括在花括號({})中。
鍵必須是唯一的,但值則不必。值可以取任何資料型別,但鍵必須不可變,所以可以用數字,字串或元組充當,所以用列表就不行。
示例:dict
= ;
3、python編碼
不管2.7還是python3編碼轉換,都需要先轉換為unicode,作為中間編碼:
頂部指定的編碼utf-8只是檔案編碼,python預設資料型別都是unicode
#!/usr/bin/env python
# -*- coding:utf-8 -*-
#檔案編碼
import sys
print(sys.getdefaultencoding()) #預設編碼格式,結果:utf-8
s = '你好'
s_to_gbk = s.encode('gbk') #utf-8轉gbk
gbk_to_utf = s_to_gbk.decode('gbk').encode() #gbk轉
print(s.encode()) #結果:b'\xe4\xbd\xa0\xe5\xa5\xbd'
print(s_to_gbk) #結果:b'\xc4\xe3\xba\xc3'
print(gbk_to_utf) #結果:b'\xe4\xbd\xa0\xe5\xa5\xbd'
print(s_to_gbk.decode('gbk')) #結果:你好
# gbk解碼為unicode,為什麼是中文展示,因為utf-8是unicode的擴充套件集
4、python函式
def fuc(name,age,*args,**kwargs):
print(name)
print(age)
print(args) #元祖
print(kwargs) #字典
fuc('amber',12,'hello','baby',***='f',add='bj',id='88')
結果:amber
12('hello', 'baby')
關鍵字引數不能寫在位置引數前面 test(1,y=2,3) 是錯誤寫法
都是關鍵字引數,比如z,y與順序無關 test(1,z=3,y=2)
位置引數與形參一一對應 test(1,2,3) #實參
def test(x,y,z): #形參
print(x,y,z)
5、python模組和包
a.模組:用來在邏輯上組織python**(函式、變數、類、邏輯:實現乙個功能),本質就是.py結尾的python檔案
匯入方法:
import test
from test import fuc1 #可以是變數、函式
from test import fnc1 as f1
b.包:用在在邏輯上組織模組的,本質就是乙個目錄(必須帶有乙個__init__.py檔案)
import package
c.import本質:(路徑搜尋和搜尋路徑)
匯入模組就是把python檔案解釋一遍
匯入包就是執行該包下的__init__.py檔案
Python知識點整理
參考 python.doc 廖雪峰的python教程 使用 將兩行 為一行 if 1900 year 2100 and1 month 12 and1 day 31 and0 hour 24 and0 minute 60 and0 second 60 looks ike a valid date re...
知識點整理
一 標準庫容器和演算法 1.順序容器 與前面類似 2.關聯容器 map和multimap 元素包含key 鍵 和值 value 兩部分 按照鍵對元素排序 map不允許重複元素出現,但multimap可以 set和multliset 是包含已排序物件的關聯容器 只是單純的鍵的集合 set不允許重複鍵出...
知識點整理
一 標準庫容器和演算法 1.順序容器 與前面類似 2.關聯容器 map和multimap 元素包含key 鍵 和值 value 兩部分 按照鍵對元素排序 map不允許重複元素出現,但multimap可以 set和multliset 是包含已排序物件的關聯容器 只是單純的鍵的集合 set不允許重複鍵出...