Number
宣告方法 a = 1
//:整數除法
**:次方
int():轉整數
float():轉浮點數
str():轉字串
//:整數除法
**:次方
int():轉整數
float():轉浮點數
str():轉字串
String
宣告方法 a = "1"
單引號雙引號皆可
字串間可以省略 "+"來做連接
三個單、雙引號可以連接跨行的字串
\:跳脫符號
split():字串轉串列
len():取得字串長度
startswith():檢查開頭
endswith():檢查結尾
find():第一次出現位移值
rfind():最後一次出現位移值
count():字串出現次數
isalnum():是否只有字母、數字
strip():分割字串成串列
capitallize():第一個字母大寫
title():所有單字第一個字母大寫
upper():全改大寫
lower():全改小寫
swapcase():大小寫互換
center():置中,引數為空白鍵數量
ljust():置左,引數為空白鍵數量
rjust():置右,引數為空白鍵數量
replace():替換
List
單引號雙引號皆可
字串間可以省略 "+"來做連接
三個單、雙引號可以連接跨行的字串
\:跳脫符號
split():字串轉串列
len():取得字串長度
startswith():檢查開頭
endswith():檢查結尾
find():第一次出現位移值
rfind():最後一次出現位移值
count():字串出現次數
isalnum():是否只有字母、數字
strip():分割字串成串列
capitallize():第一個字母大寫
title():所有單字第一個字母大寫
upper():全改大寫
lower():全改小寫
swapcase():大小寫互換
center():置中,引數為空白鍵數量
ljust():置左,引數為空白鍵數量
rjust():置右,引數為空白鍵數量
replace():替換
List
宣告方法 a = []
一個串列可以有多種型態的元素
append():加入串列尾段
insert():指定加入串列
extend():結合串列(同"+=")
del():利用位移值刪除
remove():利用值刪除
pop():利用位移值刪除,或不指定位移值默認刪除最後一個串列值
index():利用值尋找位移值
in():某值是否存在,回傳布林值
count():計算某值出現次數
join():串列轉字串
sort():排序並改變變數
sorted():排序並不改變數,建立副本
len():取得串列長度
copy():複製串列
一個串列可以有多種型態的元素
append():加入串列尾段
insert():指定加入串列
extend():結合串列(同"+=")
del():利用位移值刪除
remove():利用值刪除
pop():利用位移值刪除,或不指定位移值默認刪除最後一個串列值
index():利用值尋找位移值
in():某值是否存在,回傳布林值
count():計算某值出現次數
join():串列轉字串
sort():排序並改變變數
sorted():排序並不改變數,建立副本
len():取得串列長度
copy():複製串列
Tuple
宣告方法 a = ()
宣告之後元素不可修改
宣告Tuple每個元素後都要加逗號",",結尾可以不用加
Tuple一次可指派多的變數
tuple():轉換串列成Tuple
Dictionary
宣告方法 a = {}
a = {"key1": "value1", "key2": "value2"}dict():轉換雙值序列成字典
update():合併字典
del():利用鍵刪除
clear():清空字典(同"={}")
in():某鍵是否存在,回傳布林值
get():取得某鍵值
keys():取得所有的鍵,可利用list()轉換為串列
values():取得所有值,可利用list()轉換為串列
items():取得所有鍵與值,鍵值以Tuple型態回傳
copy():複製字典
Set
宣告方法 a = set()
set():轉換為set
in():某鍵是否存在,回傳布林值
intersection():取得交集(同"&")
union():取得聯集(同"|")
difference():取得差集(同"-")
symmetric_difference():取得互斥(同"^")
set():轉換為set
in():某鍵是否存在,回傳布林值
intersection():取得交集(同"&")
union():取得聯集(同"|")
difference():取得差集(同"-")
symmetric_difference():取得互斥(同"^")
issubset():檢查子集合(同"<=")
issuperset():檢查超集合(同">=")
<:檢查真子集
>:檢查真超集合
issuperset():檢查超集合(同">=")
<:檢查真子集
>:檢查真超集合
Iteration
zip():跌代多個序列,最短序列結束時停止
range():回傳指定範圍的一串數字
sum():計算可迭代物件總和
生成式
產生1-5整數串列
>>>a = [a for a in range(1,6)]
[1,2,3,4,5]
結合if 產生奇數
>>>a = [a for a in range(1,6) if a % 2 == 1]
[1,3,5]
雙for
cell = [(row, col) for row in rows for col in cols]
for cell in cells:
print(cell)
**引數 :字典
lambda():匿名函式
locals():區域
defaultdict():宣告字典時,當字典沒有找到指定鍵時,使用預設的值回應
Counter():計數器,回傳字典
most_common():依照降冪回傳元素
OrderedDict():記住加入字典鍵的順序
deque():堆疊+序列
itertools():跌代用搭配函式chain(),cycle(),accmulate()
pprint():印出自動排列的元素
Function
*引數:Tuple**引數 :字典
lambda():匿名函式
Namespace
globals():全域locals():區域
Standard Library
setdefault():當字典沒有找到指定鍵時,使用預設的值回應defaultdict():宣告字典時,當字典沒有找到指定鍵時,使用預設的值回應
Counter():計數器,回傳字典
most_common():依照降冪回傳元素
OrderedDict():記住加入字典鍵的順序
deque():堆疊+序列
itertools():跌代用搭配函式chain(),cycle(),accmulate()
pprint():印出自動排列的元素
OO
property():設定gette,setter
@property:裝飾器,放在getter之前
@name.setter:裝飾器,放在setter之前
@classmethod:裝飾器,類別方法
@staticmethod:裝飾器,靜態方法
Duck Typeing:
decode():解碼
import re
match()
search()
findall()
split()
mode二碼
第一碼:
r -讀取
w - 檔案存在與否,均可寫入
x - 檔案不存在時,寫入
a - 檔案存在時,寫入結尾
第二碼:
t - 文字
b - 二進位
write():寫入檔案
read():讀取
readline():行為單位讀取
readlines():行為單位讀取,並建立串列
seek():
cursor():建立物件處理查詢指令
execute():執行SQL指令
executemany():執行多個SQL指令
fetchone():取得execute
fetchmany():取得多個execute
fetchall():取得全部execute
宣告
import redis
conn = redis.Redis()
String
set():設定鍵,值
get():取得值
setnx():鍵不存在時才會設定
getset():回傳舊值,設定新值
getrange():取得子字串
setrange():替換子字串
mset():一次設定多個鍵
delete():刪除鍵
incr():遞增
incrbyfloat():遞增
decr():遞減
decrbyfloat():
List(只能放字串)
lpush():插入一個或多個於開頭
linsert():插入某值之前與之後
lset():插入於指定位移值
rpush():插入於結尾
lindex():利用位移值取值
lrange():取得位移值範圍的值
ltrim():擷取位移值範圍串列
Hash(只能放字串)
hmset():設定欄位值
hset():設定單一欄位值
hget():取得欄位值
hmget():取得多個欄位值
hkeys():取得所有欄位鍵
hvals():取得所有欄位值
hlen():取得欄位數量
hgetall():取得所有欄位鍵/值
hsetnx():設定欄位值,當欄位不存在時
Set
sadd():加入一個或多個集合
scard():取得集合值數量
smembers():取得所有集合值
srem():移除集合值
sinter():取得交集
sinterstore():取得交集並存入進集合
sunion():取得聯集
sunionstore():取得聯集並存入進集合
sdiff():取得差集
sdiffstroe():取得差集並存入進集合
Sorted Set
zadd():加入
zrank():取得數列
zscore():取得值
zrange():數列範圍的串列
Cache
expire():設定逾期時間
import doctest
doctest.testmod()
Flask
run():debug=true 除錯網頁
繼承
class Person(Alien, God, Monster): #可實行多重繼承
封裝
利用雙底線__來封裝變數
class Person:
def __init__(self, a=2, b=3):
self.__a=a
self.__b=b
def do(self):
print(self.__a + self.__b)
類別變數Counter為例
class Person:
count = 0
def __init__(self):
Person.count += 1
print(Person.count)
tom = Person()
jack = Person()
amy = Person()
呼叫父類別的建構子
class Father():
def __init__(self):
print("last name Hsieh")
class Son(Father):
def __init__(self):
Father.__init__(self)
print("Son created")
特別method名稱
class Book():
def __init__(self, name, pages):
self.name = name
self.pages = pages
def __str__(self):
return "Name:{}".format(self.name)
def __len__(self):
return self.pages
def __del__(self):
print("A book is deleted.")
b = Book("The Guide", 20)
print(b) # __str__
print(len(b)) # __len__
del b # __del__
更多參考https://openhome.cc/Gossip/Python/SpecialMethodNames.html
//lambda用完即丟 可搭配 map(), filter()等等
lambda num: n % 2==0
@property:裝飾器,放在getter之前
@name.setter:裝飾器,放在setter之前
@classmethod:裝飾器,類別方法
@staticmethod:裝飾器,靜態方法
Duck Typeing:
Unicode
encode():編碼decode():解碼
import re
match()
search()
findall()
split()
I/O
open(filename, mode):mode二碼
第一碼:
r -讀取
w - 檔案存在與否,均可寫入
x - 檔案不存在時,寫入
a - 檔案存在時,寫入結尾
第二碼:
t - 文字
b - 二進位
write():寫入檔案
read():讀取
readline():行為單位讀取
readlines():行為單位讀取,並建立串列
seek():
DB API
connect():設定引數,連接資料庫cursor():建立物件處理查詢指令
execute():執行SQL指令
executemany():執行多個SQL指令
fetchone():取得execute
fetchmany():取得多個execute
fetchall():取得全部execute
NoSql
安裝Redis:pip install redis宣告
import redis
conn = redis.Redis()
String
set():設定鍵,值
get():取得值
setnx():鍵不存在時才會設定
getset():回傳舊值,設定新值
getrange():取得子字串
setrange():替換子字串
mset():一次設定多個鍵
delete():刪除鍵
incr():遞增
incrbyfloat():遞增
decr():遞減
decrbyfloat():
List(只能放字串)
lpush():插入一個或多個於開頭
linsert():插入某值之前與之後
lset():插入於指定位移值
rpush():插入於結尾
lindex():利用位移值取值
lrange():取得位移值範圍的值
ltrim():擷取位移值範圍串列
Hash(只能放字串)
hmset():設定欄位值
hset():設定單一欄位值
hget():取得欄位值
hmget():取得多個欄位值
hkeys():取得所有欄位鍵
hvals():取得所有欄位值
hlen():取得欄位數量
hgetall():取得所有欄位鍵/值
hsetnx():設定欄位值,當欄位不存在時
Set
sadd():加入一個或多個集合
scard():取得集合值數量
smembers():取得所有集合值
srem():移除集合值
sinter():取得交集
sinterstore():取得交集並存入進集合
sunion():取得聯集
sunionstore():取得聯集並存入進集合
sdiff():取得差集
sdiffstroe():取得差集並存入進集合
Sorted Set
zadd():加入
zrank():取得數列
zscore():取得值
zrange():數列範圍的串列
Cache
expire():設定逾期時間
For Test
using doctestimport doctest
doctest.testmod()
Flask
run():debug=true 除錯網頁
繼承
class Person(Alien, God, Monster): #可實行多重繼承
封裝
利用雙底線__來封裝變數
class Person:
def __init__(self, a=2, b=3):
self.__a=a
self.__b=b
def do(self):
print(self.__a + self.__b)
類別變數Counter為例
class Person:
count = 0
def __init__(self):
Person.count += 1
print(Person.count)
tom = Person()
jack = Person()
amy = Person()
呼叫父類別的建構子
class Father():
def __init__(self):
print("last name Hsieh")
class Son(Father):
def __init__(self):
Father.__init__(self)
print("Son created")
特別method名稱
class Book():
def __init__(self, name, pages):
self.name = name
self.pages = pages
def __str__(self):
return "Name:{}".format(self.name)
def __len__(self):
return self.pages
def __del__(self):
print("A book is deleted.")
b = Book("The Guide", 20)
print(b) # __str__
print(len(b)) # __len__
del b # __del__
更多參考https://openhome.cc/Gossip/Python/SpecialMethodNames.html
//lambda用完即丟 可搭配 map(), filter()等等
lambda num: n % 2==0
沒有留言:
張貼留言