python cookbook 文本

1.1每次處理一個字符:利用for和列表綜合以及map,reduce,filter;
1.2字符和字符值之間的轉換:利用ord,chr,unichr函數;
例:print map(ord, 'ciao')
1.3測試一個對象是不是類字符串,利用isinstance和basestring來檢驗是不是str或unicode,要處理不是從basestring繼承而來的字符串,須要用EAFP方法(時候檢查)來進行判斷;
1.4字符串對齊,利用ljust,rjust,center方法;
1.5去除字符串兩端的空格,利用strip,lstrip,rstrip方法;
1.6合併字符串,利用"fdasfda%sfd%sas"(a,b)方法簡單,並且能夠自動實現字符串轉換,利用+,+=速度很慢,性能損失嚴重;利用''.join(list),方法高效快速;
1.7將字符串逐字符或逐詞反轉,法一:astring[::-1],法二:astring.reverse()
一句話實現逐詞反轉:revwords = ' '.join(reversed(astring.split( )))
1.8檢查字符串中是否包含某字符集合中的字符,利用for  i in s或for item in itertools.ifilter(a._ _contains_ _, b)
檢查序列 seq 是否含有 aset 的全部的項:return not set(aset).difference(seq)(利用set的difference)或者利用:return not aset.translate(notrans, seq)
檢查序列 seq 是否含有 aset 其中一項:return len(strset) != len(strset.translate(notrans, astr))
1.9簡化字符串的 translate 方法的使用:用字符串的 translate 方法來進行快速編碼,但卻發現很難記住這個方法和 string.maketrans函數的應用細節,因此須要對它們作個簡單的封裝,以簡化其使用流程。
1.10:過濾字符串中不屬於指定集合的字符:利用translate和maketrans,利用兩次translate實現補集功能;
1.11檢查一個字符串是文本仍是二進制,若是字符串中包含了空值或者其中有超過 30%的字符的高位被置 1(意味着該字符的碼值大於 126)或是奇怪的控制碼,咱們就認爲這段數據是二進制數據。
1.12:控制大小寫,能夠利用的函數有:upper,lower,capitalize,title和islower,isupper,istitle函數
相關文章
相關標籤/搜索