前言在Python中可迭代(Iterable)、迭代器(Iterator)和生成器(Generator)這幾個(gè)概念是經(jīng)常用到的,初學(xué)時(shí)對(duì)這幾個(gè)概念也是經(jīng)常混淆,現(xiàn)在是時(shí)候把這幾個(gè)概念搞清楚了。0x00可迭代(Iterable)簡(jiǎn)單的說,一個(gè)對(duì)象(在Python里面一切都是對(duì)象)只要實(shí)現(xiàn)了只要實(shí)現(xiàn)了__iter__()方法,那么用isinstance()函數(shù)檢查就是Iterable對(duì)象;例如classIterObj:def__iter__(self):#這里
系統(tǒng) 2019-09-27 17:56:54 1758
os模塊描述:python標(biāo)準(zhǔn)庫(kù)中的一個(gè)用于訪問操作系統(tǒng)功能的模塊。作用:用來實(shí)現(xiàn)跨平臺(tái)訪問常用操作:os.sep系統(tǒng)路徑的分隔符>>>importos>>>os.sep'/'#windows上運(yùn)行結(jié)果為:\\#windows上的pycharm運(yùn)行結(jié)果為:\#Linux運(yùn)行結(jié)果為:/os.linesep輸出當(dāng)前平臺(tái)使用的行終止符>>>importos>>>os.linesep'\n'os.environ獲取系統(tǒng)環(huán)境變量os.getcwd()獲取當(dāng)前工作路徑
系統(tǒng) 2019-09-27 17:56:35 1758
本文實(shí)例講述了Python實(shí)現(xiàn)計(jì)算對(duì)象的內(nèi)存大小。分享給大家供大家參考,具體如下:一般的sys.getsizeof()顯示不了復(fù)雜的字典。查看類中的內(nèi)容:defdump(obj):forattrindir(obj):#dir顯示類的所有方法print("obj.%s=%r"%(attr,getattr(obj,attr)))這里用遞歸調(diào)用所有對(duì)象的getsizeof:defget_size(obj,seen=None):#Fromhttps://goshi
系統(tǒng) 2019-09-27 17:55:55 1758
在Python中,裝飾器的本質(zhì)就是Python中的一個(gè)函數(shù),其來源自Python面向?qū)ο蟆Qb飾器是在函數(shù)調(diào)用之上的修飾。這些修飾僅是當(dāng)聲明一個(gè)函數(shù)或方法的時(shí)候,才會(huì)被應(yīng)用額外的調(diào)用。有點(diǎn)類似Java中的AOP(面向方面編程)。同時(shí)在設(shè)計(jì)模式中,還有裝飾器模式,也即是:裝飾器模式(DecoratorPattern)允許向一個(gè)現(xiàn)有的對(duì)象添加新的功能,同時(shí)又不改變其結(jié)構(gòu)。原則是:不修改被修飾函數(shù)的源代碼,不修改被修飾函數(shù)的調(diào)用方式。裝飾器的用途:引入日志增加計(jì)時(shí)
系統(tǒng) 2019-09-27 17:55:09 1758
Python函數(shù)編程——函數(shù)簡(jiǎn)介引子現(xiàn)在老板讓你寫一個(gè)監(jiān)控程序,24小時(shí)全年無休的監(jiān)控你們公司網(wǎng)站服務(wù)器的系統(tǒng)狀況,當(dāng)cpu\memory\disk等指標(biāo)的使用量超過閥值時(shí)即發(fā)郵件報(bào)警,你掏空了所有的知識(shí)量,寫出了以下代碼whileTrue:ifcpu利用率>90%:#發(fā)送郵件提醒連接郵箱服務(wù)器發(fā)送郵件關(guān)閉連接if硬盤使用空間>90%:#發(fā)送郵件提醒連接郵箱服務(wù)器發(fā)送郵件關(guān)閉連接if內(nèi)存占用>80%:#發(fā)送郵件提醒連接郵箱服務(wù)器發(fā)送郵件關(guān)閉連接上面的代碼實(shí)
系統(tǒng) 2019-09-27 17:55:03 1758
本文原創(chuàng)并首發(fā)于公眾號(hào)【Python貓】,未經(jīng)授權(quán),請(qǐng)勿轉(zhuǎn)載。原文地址:https://mp.weixin.qq.com/s/-f...Python是一門強(qiáng)大的動(dòng)態(tài)語(yǔ)言,那動(dòng)態(tài)體現(xiàn)在哪里,強(qiáng)大又體現(xiàn)在哪里呢?除了好的方面,Python的動(dòng)態(tài)性是否還藏著一些使用陷阱呢,有沒有辦法識(shí)別與避免呢?沿著它的動(dòng)態(tài)特性話題,貓哥有幾篇文章依次探及了:動(dòng)態(tài)修改變量、動(dòng)態(tài)定義函數(shù)、動(dòng)態(tài)執(zhí)行代碼等內(nèi)容,然而,當(dāng)混合了變量賦值、動(dòng)態(tài)賦值、命名空間、作用域、函數(shù)的編譯原理等等內(nèi)
系統(tǒng) 2019-09-27 17:55:00 1758
本文實(shí)例講述了PythonWeb框架之Django框架Model基礎(chǔ)。分享給大家供大家參考,具體如下:model是關(guān)于你的數(shù)據(jù)的單一的,確定的信息來源。它包含您正在存儲(chǔ)的數(shù)據(jù)的基本字段和行為。Django通過抽象化的模型層(models)為你的網(wǎng)絡(luò)應(yīng)用提供對(duì)于數(shù)據(jù)的結(jié)構(gòu)化處理和操作處理,數(shù)據(jù)庫(kù)相關(guān)的代碼一般寫在models.py中,Django支持sqlite3,MySQL,PostgreSQL等數(shù)據(jù)庫(kù),使用數(shù)據(jù)庫(kù)API對(duì)數(shù)據(jù)庫(kù)進(jìn)行增刪改查的操作。使用哪種
系統(tǒng) 2019-09-27 17:54:54 1758
Python函數(shù)編程——迭代器我們已經(jīng)知道,可以直接作用于for循環(huán)的數(shù)據(jù)類型有以下幾種:1、類是集合數(shù)據(jù)類型,如list、tuple、dict、set、str等;2、一類是generator,包括生成器和帶yield的generatorfunction。這些可以直接作用于for循環(huán)的對(duì)象統(tǒng)稱為可迭代對(duì)象:Iterable,可迭代的意思就是可遍歷、可循環(huán)。可以使用isinstance()判斷一個(gè)對(duì)象是否是Iterable對(duì)象:>>>fromcollecti
系統(tǒng) 2019-09-27 17:54:50 1758
2019-09-16-23:09:06自學(xué)Python的第六天,也是寫博客的第六天今天學(xué)的內(nèi)容是有關(guān)dict字典的用法看視頻加上練習(xí),目前還沒遇到有難點(diǎn),但是感覺很不好的樣子沒有難點(diǎn)以后突然出現(xiàn)一個(gè)有關(guān)字典的程序感覺要炸,還是得繼續(xù)掌握看最后的代碼吧,有更好的請(qǐng)告訴我======我======是=====一======條======快======樂======的======分======割======線======一.重要知識(shí)點(diǎn)1.dict用大括號(hào){}括起
系統(tǒng) 2019-09-27 17:54:44 1758
主要邏輯是判斷文件的最后修改時(shí)間與創(chuàng)建時(shí)間是否在秒級(jí)別上一致,此代碼適用于Python2.importtimeimportos#ReadfimenameFileName='D:/scapegoat/xx.csv'#printfilecreationtimeprinttime.strftime('%Y-%m-%d%H:%M:%S',time.localtime(os.stat(FileName).st_ctime))#printfilemodifiedtim
系統(tǒng) 2019-09-27 17:54:41 1758