摘要:函數的使用一般的字符串組合操作都建議使用字符串操作經常使用的就另外還有里面可以寫成一個列表解析的形式而不是從列表中刪除多個相同的元素用是不行的只能刪除從左到右找到的第一個元素后面的不會刪除自認為兩種比較好的方式如下或者隨機生成位字符串引用類
join函數的使用
一般的字符串組合操作都建議使用join, 字符串操作經常使用的就join, split, replace, 另外還有partition
join里面可以寫成一個列表解析的形式
m = map(str, range(9)) ",".join(x for x in m if x != "3") # 而不是 ",".join([x for x in m if x != "3"])從列表中刪除多個相同的元素
用list.remove是不行的, 只能刪除從左到右找到的第一個元素, 后面的不會刪除
自認為兩種比較好的方式如下
m = ["a", "b", "c", "a"] m = filter(lambda x: x !="a", m)
或者
m[:] = (x for x in m if x != "a")隨機生成n位字符串
import random import string rand_str = "".join([random.choice(string.letters+string.digits) for _ in xrange(n)])引用類型的問題 函數參數
函數默認參數,只在定義時參數求值了一次,函數的多個調用將使用同一個可變參數
def test(data, x=[]): x.append(data) return x print test(3) # [3] print test(4) # [3, 4]dict.fromkeys設置默認值的問題
和函數參數問題一樣,多個鍵值對應的value將調用同一個列表。設置為{}自然也是一樣的結果
>>> a = dict.fromkeys("bc", []) >>> a["b"].append(6) >>> a {"b": [6], "c": [6]}多個變量聲明
一般會有聲明多個空list和空dict的需求
將導致多個變量共享同一個[]或{}的錯誤的做法
a = b = [] c = d = {}
正確的方式
a, b = [], [] # for a lot of var c, d, e, f = [{} for _ in xrange(4)]
其它int, str, bool等沒有此問題,可直接寫成
a = b = True
del的時候一次可以刪除多個
>>> a = range(3) >>> del a[2], a[0] >>> a [1]切片操作
可以用-1來反轉列表
>>> a = range(7) >>> a[::-1] [6, 5, 4, 3, 2, 1, 0] >>> a[::2] [0, 2, 4, 6]
用切片刪除某一段序列,等同于del a[1:4]
>>> a = [1, 2, 3, 4, 5, 6, 7] >>> a[1:4] = [] >>> a [1, 5, 6, 7]
去除偶數索引
>>> a = [0, 1, 2, 3, 4, 5, 6, 7] >>> del a[::2] >>> a [1, 3, 5, 7]關于省略號
主要用于多維矩陣中,減少定位操作時的復雜度,用得不多,更仔細的說明見這里
>>> class C(object): ... def __getitem__(self, item): ... return item ... >>> C()[1:2, ..., 3] (slice(1, 2, None), Ellipsis, 3)文件操作 一次讀取整個文件
使用二進制模式,如rb模式, 使用r則只能讀取到一部分
with open(path, "rb") as f: return f.read()按行讀取
將文件對象看錯iterator
with open(path, "r") as f: for line in f: print line
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/37742.html
??蘇州程序大白一文從基礎手把手教你Python數據可視化大佬??《??記得收藏??》 目錄 ????開講啦!!!!????蘇州程序大白?????博主介紹前言數據關系可視化散點圖 Scatter plots折線圖強調連續性 Emphasizing continuity with line plots同時顯示多了圖表 數據種類的可視化 Plotting with categorical da...
摘要:的三種數據類型字典列表元組,分別用花括號中括號小括號表示。約等于上句,可能是因為自定義變量名與內部函數或變量同名了。下,默認路徑一般為。的日志模塊中計時器定時器計劃任務,。對象的問題怎樣忽略警告不打印煩人的警告打印到終端同時記錄到文件。 Python Enhancement Proposal。(PEP,Python增強建議書) Python之禪(import this) Pytho...
摘要:元組是靜態數組,它們不可變,且其內部數據一旦創建便無法改變。元組緩存于運行時環境,這意味著我們每次使用元組時無須訪問內核去分配內存。 以下是整理的JavaScript和python的基礎區別的整理: 字符串、列表、元組、字典、集合、函數 字符串 聲明一個字符串 python str = 123 str = 123 Tips: 如果是三個引號的話,那么在py中就是注釋的意思 ...
摘要:元組是靜態數組,它們不可變,且其內部數據一旦創建便無法改變。元組緩存于運行時環境,這意味著我們每次使用元組時無須訪問內核去分配內存。 以下是整理的JavaScript和python的基礎區別的整理: 字符串、列表、元組、字典、集合、函數 字符串 聲明一個字符串 python str = 123 str = 123 Tips: 如果是三個引號的話,那么在py中就是注釋的意思 ...
摘要:中的可以起到與此處相同的效果判斷奇數自然是使用位操作最快了刪除要刪除的數量較多超多一半的話,建議重新生成如果數量較少,在和都可以的情況下,稍快一些 給dict設置默認值 這樣能設置所有key的默認值為[],包括新添的key from collections import defaultdict context = defaultdict(list) setdefault一次只能設置一個...
閱讀 2135·2019-08-29 16:53
閱讀 2712·2019-08-29 16:07
閱讀 2054·2019-08-29 13:13
閱讀 3277·2019-08-26 13:57
閱讀 1342·2019-08-26 13:31
閱讀 2446·2019-08-26 13:22
閱讀 1232·2019-08-26 11:43
閱讀 2095·2019-08-23 17:14