python學習筆記
這個筆記就大致的記了一下一些基本的操作吧, 寫的不是很全, 但是自己寫了一遍, 感覺對於學python 還是很有幫助的, 但是還是想說,不管什麼語言, 一定要多敲代碼, 纔能有所理解
賦值
x1, x2 = 1 , 2
x1,x2 = x2,x1
type(xx)
返回類型
id(內存地址)
切片操作
xx[a:b:c]
a 起始
b 結束
c 步長 ,c = -1 逆序輸出
cmp(a, b)
repr() 或''
str() 以字符串的方式獲取對象的內容
eval() 重新獲得對象
abs() 取絕對值
coerce() 數值轉換
divmod(a,b) -> 返回元組(a/b ,a%b)
chr(x) 轉爲字符
unichr(x)
otc(x) 8進制
ord(x) 轉爲整形
range([start,]stop,[step]) 注意 stop的值取不到
xrange() 生成一個 生成器
// 需導入random模塊
randrange()
random() 返回0-1 之間的一個數
randint() 返回整型
uniform() 返回二者間的浮點數
choice() 隨機返回給定序列的一個元素
input("sada:") 輸入必須是合法字符,但輸入數字時有自己的特性 like:'asdas'
raw_input("asdas:") 接受任何輸入
序列關係操作符 in / not in
se *xx 重複
se[x] 某元素
se[start :end] 元素集合
se1 + se2
list(iter) 可迭代對象轉列表
tuple(iter) 可迭代對象轉元組
len(seq) 返回seq的長度
max/min(iter , key = None ) 返回最大小值 ,如果指定key , key 必須可以傳給iter
sum(iter , init = 0 ) 總和
reversed(seq) 返回一個逆序的迭代器
sorted(iter ,func = None , key = None ,reversed = False )
zip(it0 ,it1 ,it2.....) 打包, 返回多個列表, 每個it 的第i 個元素,組成第i個元組
string 的操作和列表相似, str()
s.join (xxxx) ,在xxxx中插入s
s.split ('x') 以x 爲分隔符
* S.swapcase() 大小寫轉換
str 元素不可變
但可以通過排切片操作來達到刪除、插入的目的
s = '%sC%s' % (s[0:2], s[3:])
list.exend()
list.append()
unicode 字符串操作
字符串操作 的函數較多,故省略
u'sdad'
enumerate(x) 如果要對一個列表或者數組既要遍歷索引又要遍歷元素時
列表解析
[exp for xx in xaxsa]
字典{}
keys()
d.fromkeys(('x','y'),-1) 值一樣
d.keys() 字典的鍵
d.value ()
d.items()
d.pop()
dict()
集合
set() 可變集合
frozenset() 不可變集合
s.add('asdsad') , 則加入一個asdsad
s.update('sadas') ,如果有不同的字符則更新 s
| 聯合
& 交集
- 補集
^ 對稱差分
當然還有|= , -= 等
s.difference()
s.rmove()
迭代器
iter()
iter(func , sexa) #調用h函數 ,直至到sexa
生成器表達式
(exp for i in xxx )
文件操作
f = open("file" ,'way')
f.seek(a, b ) b = 1 當前 = 0 頭 =2 尾
f.tell()
for eachline in f.read()
命令行
import sys
sys.argv
import os : 跟系統有關的函數
os.path
os.path.expanduser()
、
a.strip(xx) 刪除開頭結尾處的xx
split() 分割
filter() 過濾
錯誤和異常
捕獲所有異常 Exception , e
try:
pass
except (Exception1,Exception2.....)[, e]:
raise
else:
pass
finally:
pass
raise 引發你自己的異常
with 上下文管理
assert 斷言
函數
def xx(*tuple , **dict):
'I "m attribution'
[return xxx]
函數可內嵌
裝飾器
在某函數前 @另一個函數 , 相當於繼承
函數屬性
__doc__
函數的形式參數
可以傳函數名
def www( args , argv , asdfd = 0 , bsad=1 ):
默認的參數放後面
可變長度的參數
def wwx ([form1_agrs] , *varg_tuple):
匿名函數 lambda :exp a = lambda argc : expr
內建函數
filter(func , seq)用於過濾
map(expr , seq )
reduce() like func (func (a, b ) ,c)
偏函數
from operator import add
from functools import partial
add1 = partial(add ,1)
全局變量
global xxx
閉包
def make_adder(addend):
def adder(augend):
return augend + addend
return adder
p = make_adder(23)
q = make_adder(44)
print p(100)
print q(100)
生成器
def asdas():
yield xxxx
模塊
import sys
sys.path.append('path')
from xx import xxx as
from xx import * 導入所有的函數 但是不是很推薦
可從.zip文件導入模塊
globals()
locals()
包import xx.xxx.xxx.xxxxx
from xx.x.xxx import xxxxxxx
執行環境
callable(xxx) 看 xxx 是否可以用() 來調用 返回 True/False
compile(string , file|'' , type) type = eval | exec | single
eval() 表達式求值
single 是單一可執行語句
exec 多個
都用 exec 執行
execfile()
exec()執行語句
input("asdsad")
執行
os.system()
os.popen() 可以返回文件對象
os.fork()
os.exec()
subprocess
sys.exit)_
SystemExit
正則
| 表示或 : foo|xxx -> foo , xxx
. 任何一個字符 .f -> af ,tf ....
^ 匹配以xx開頭的字符串 ^aaa ->aaad ,.....
$ .......結尾。。。。。 aaa$ -> daaa
\basd\b asd
\bss 以ss開頭
\Bss 含有ss
[] 字符類
-指定範圍
^否定
........
match()
serch()
findall() 返回所有匹配的值
subn('x' , 'tihuanhou' , 'string ') 多返回 一個 次數
sub()
split()
閉包操作符 * + ? {}(N次出現)
線程 threading sys
time.sleep(xx) xx 爲秒數
ctime 輸出一個完整的信息
以下爲thread模塊(最好不要用此模塊)
thread.start_new_thread (loop , () )
thread.allocate_lock() 分配鎖對象
acquire() 獲取對象
lock() 鎖定
release() 解鎖
threading模塊
Thread.start()
run()
join() 掛起進程, 直到線程結束
isAlive()
isDaemon()
賦值
x1, x2 = 1 , 2
x1,x2 = x2,x1
type(xx)
返回類型
id(內存地址)
切片操作
xx[a:b:c]
a 起始
b 結束
c 步長 ,c = -1 逆序輸出
cmp(a, b)
repr() 或''
str() 以字符串的方式獲取對象的內容
eval() 重新獲得對象
abs() 取絕對值
coerce() 數值轉換
divmod(a,b) -> 返回元組(a/b ,a%b)
chr(x) 轉爲字符
unichr(x)
otc(x) 8進制
ord(x) 轉爲整形
range([start,]stop,[step]) 注意 stop的值取不到
xrange() 生成一個 生成器
// 需導入random模塊
randrange()
random() 返回0-1 之間的一個數
randint() 返回整型
uniform() 返回二者間的浮點數
choice() 隨機返回給定序列的一個元素
input("sada:") 輸入必須是合法字符,但輸入數字時有自己的特性 like:'asdas'
raw_input("asdas:") 接受任何輸入
序列關係操作符 in / not in
se *xx 重複
se[x] 某元素
se[start :end] 元素集合
se1 + se2
list(iter) 可迭代對象轉列表
tuple(iter) 可迭代對象轉元組
len(seq) 返回seq的長度
max/min(iter , key = None ) 返回最大小值 ,如果指定key , key 必須可以傳給iter
sum(iter , init = 0 ) 總和
reversed(seq) 返回一個逆序的迭代器
sorted(iter ,func = None , key = None ,reversed = False )
zip(it0 ,it1 ,it2.....) 打包, 返回多個列表, 每個it 的第i 個元素,組成第i個元組
string 的操作和列表相似, str()
s.join (xxxx) ,在xxxx中插入s
s.split ('x') 以x 爲分隔符
* S.swapcase() 大小寫轉換
str 元素不可變
但可以通過排切片操作來達到刪除、插入的目的
s = '%sC%s' % (s[0:2], s[3:])
list.exend()
list.append()
unicode 字符串操作
字符串操作 的函數較多,故省略
u'sdad'
enumerate(x) 如果要對一個列表或者數組既要遍歷索引又要遍歷元素時
列表解析
[exp for xx in xaxsa]
字典{}
keys()
d.fromkeys(('x','y'),-1) 值一樣
d.keys() 字典的鍵
d.value ()
d.items()
d.pop()
dict()
集合
set() 可變集合
frozenset() 不可變集合
s.add('asdsad') , 則加入一個asdsad
s.update('sadas') ,如果有不同的字符則更新 s
| 聯合
& 交集
- 補集
^ 對稱差分
當然還有|= , -= 等
s.difference()
s.rmove()
迭代器
iter()
iter(func , sexa) #調用h函數 ,直至到sexa
生成器表達式
(exp for i in xxx )
文件操作
f = open("file" ,'way')
f.seek(a, b ) b = 1 當前 = 0 頭 =2 尾
f.tell()
for eachline in f.read()
命令行
import sys
sys.argv
import os : 跟系統有關的函數
os.path
os.path.expanduser()
、
a.strip(xx) 刪除開頭結尾處的xx
split() 分割
filter() 過濾
錯誤和異常
捕獲所有異常 Exception , e
try:
pass
except (Exception1,Exception2.....)[, e]:
raise
else:
pass
finally:
pass
raise 引發你自己的異常
with 上下文管理
assert 斷言
函數
def xx(*tuple , **dict):
'I "m attribution'
[return xxx]
函數可內嵌
裝飾器
在某函數前 @另一個函數 , 相當於繼承
函數屬性
__doc__
函數的形式參數
可以傳函數名
def www( args , argv , asdfd = 0 , bsad=1 ):
默認的參數放後面
可變長度的參數
def wwx ([form1_agrs] , *varg_tuple):
匿名函數 lambda :exp a = lambda argc : expr
內建函數
filter(func , seq)用於過濾
map(expr , seq )
reduce() like func (func (a, b ) ,c)
偏函數
from operator import add
from functools import partial
add1 = partial(add ,1)
全局變量
global xxx
閉包
def make_adder(addend):
def adder(augend):
return augend + addend
return adder
p = make_adder(23)
q = make_adder(44)
print p(100)
print q(100)
生成器
def asdas():
yield xxxx
模塊
import sys
sys.path.append('path')
from xx import xxx as
from xx import * 導入所有的函數 但是不是很推薦
可從.zip文件導入模塊
globals()
locals()
包import xx.xxx.xxx.xxxxx
from xx.x.xxx import xxxxxxx
執行環境
callable(xxx) 看 xxx 是否可以用() 來調用 返回 True/False
compile(string , file|'' , type) type = eval | exec | single
eval() 表達式求值
single 是單一可執行語句
exec 多個
都用 exec 執行
execfile()
exec()執行語句
input("asdsad")
執行
os.system()
os.popen() 可以返回文件對象
os.fork()
os.exec()
subprocess
sys.exit)_
SystemExit
正則
| 表示或 : foo|xxx -> foo , xxx
. 任何一個字符 .f -> af ,tf ....
^ 匹配以xx開頭的字符串 ^aaa ->aaad ,.....
$ .......結尾。。。。。 aaa$ -> daaa
\basd\b asd
\bss 以ss開頭
\Bss 含有ss
[] 字符類
-指定範圍
^否定
........
match()
serch()
findall() 返回所有匹配的值
subn('x' , 'tihuanhou' , 'string ') 多返回 一個 次數
sub()
split()
閉包操作符 * + ? {}(N次出現)
線程 threading sys
time.sleep(xx) xx 爲秒數
ctime 輸出一個完整的信息
以下爲thread模塊(最好不要用此模塊)
thread.start_new_thread (loop , () )
thread.allocate_lock() 分配鎖對象
acquire() 獲取對象
lock() 鎖定
release() 解鎖
threading模塊
Thread.start()
run()
join() 掛起進程, 直到線程結束
isAlive()
isDaemon()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.