#!/usr/bin/envpython#-*-coding:utf-8-*-#問題:給出一個字符串,分別輸出該字符串中小寫字母,大寫字母,數(shù)字,以及其他字符串的個數(shù)chuan="aasdhauADSGFTHFTdbhi1224324漢字"len_lower=0len_upper=0len_digit=0foriinchuan:ifi.islower():len_lower+=1ifi.isupper():len_upper+=1ifi.isdigit()
系統(tǒng) 2019-09-27 17:56:34 1757
題目給定一個二叉樹,找出其最大深度。二叉樹的深度為根節(jié)點到最遠葉子節(jié)點的最長路徑上的節(jié)點數(shù)。說明:葉子節(jié)點是指沒有子節(jié)點的節(jié)點。示例:給定二叉樹[3,9,20,null,null,15,7],3/920/157返回它的最大深度3。思路BFS廣度優(yōu)先搜索,使用雙端隊列deque(因為性能比另外兩種Queue好得多),在大循環(huán)內(nèi)對二叉樹的每個層做一次遍歷,range(len(queue))使只遍歷當前的層,每次大循環(huán)ans加1。由于每個節(jié)點僅訪問一次,所以時間
系統(tǒng) 2019-09-27 17:56:23 1757
Python入門之內(nèi)置模塊--sys模塊1、sys模塊sys模塊是與python解釋器交互的一個接口print(sys.path)#模塊查找的順序print(sys.argv)#命令行參數(shù)List,第一個元素是程序本身路徑只能在終端執(zhí)行print(sys.modules)#查看加載到內(nèi)存的模塊print(sys.platform)#查看當前操作系統(tǒng)平臺mac-darwinwin-win32print(sys.version)#查看當前解釋器的版本sys.e
系統(tǒng) 2019-09-27 17:56:06 1757
本文實例講述了Python實現(xiàn)計算對象的內(nèi)存大小。分享給大家供大家參考,具體如下:一般的sys.getsizeof()顯示不了復雜的字典。查看類中的內(nèi)容:defdump(obj):forattrindir(obj):#dir顯示類的所有方法print("obj.%s=%r"%(attr,getattr(obj,attr)))這里用遞歸調(diào)用所有對象的getsizeof:defget_size(obj,seen=None):#Fromhttps://goshi
系統(tǒng) 2019-09-27 17:55:55 1757
本文實例講述了python獲取Linux下文件版本信息、公司名和產(chǎn)品名的方法,分享給大家供大家參考。具體如下:區(qū)別于前文所述。本例是在linux下得到文件版本信息,主要是通過pefile模塊解析文件中的字符串得到的。代碼如下:def_get_company_and_product(self,file_path):"""Readallpropertiesofthegivenfilereturnthemasadictionary.@return:atumple
系統(tǒng) 2019-09-27 17:55:49 1757
一個簡易的TCP端口掃描器,使用python3實現(xiàn)。需求:掃描目標網(wǎng)站開放哪些端口號,將所有開放的端口號輸出。分析:使用socket連接,如果連接成功,認為端口開放,如果連接失敗,認為端口關閉(有可能端口開放但連接失敗,這里簡單認為端口不開放)使用到的庫:socket,threading過程:先定義一個函數(shù),對給定的(ip,port)進行掃描,看其是否能連接成功。deftcpPortScan(ip,port,openPort):sock=socket.so
系統(tǒng) 2019-09-27 17:55:41 1757
譯序如果說優(yōu)雅也有缺點的話,那就是你需要艱巨的工作才能得到它,需要良好的教育才能欣賞它。——EdsgerWybeDijkstra在Python社區(qū)文化的澆灌下,演化出了一種獨特的代碼風格,去指導如何正確地使用Python,這就是常說的pythonic。一般說地道(idiomatic)的python代碼,就是指這份代碼很pythonic。Python的語法和標準庫設計,處處契合著pythonic的思想。而且Python社區(qū)十分注重編碼風格一的一致性,他們極力
系統(tǒng) 2019-09-27 17:55:36 1757
最近新需求來了,要給系統(tǒng)增加幾個資源權限。盡量減少代碼的改動和程序的復雜程度。所以還是使用裝飾器比較科學之前用了一些登錄驗證的現(xiàn)成裝飾器模塊。然后仿寫一些用戶管理部分的權限裝飾器。比如下面這種defpermission_required(permission):defdecorator(f):@wraps(f)defdecorated_function(*args,**kwargs):ifnotcurrent_user.can(permission):ab
系統(tǒng) 2019-09-27 17:55:30 1757
本文實例講述了python3生成隨機數(shù)的方法。分享給大家供大家參考。具體實現(xiàn)方法如下:該實例是根據(jù)一本書上看到過一個隨機數(shù)的小程序,經(jīng)過自己改動,變?yōu)榱艘粋€猜數(shù)字的小游戲,現(xiàn)在在python3下重寫了一遍。這是一個控制臺下的猜數(shù)程序,winxp+python3.2+eric5和IDLE測試通過,但直接用winxp的命令行運行有問題,原因還未知,慢慢找。ubuntu+python3.1測試通過。具體實現(xiàn)代碼如下:復制代碼代碼如下:#-*-coding:utf
系統(tǒng) 2019-09-27 17:55:11 1757
在Python中,裝飾器的本質(zhì)就是Python中的一個函數(shù),其來源自Python面向?qū)ο蟆Qb飾器是在函數(shù)調(diào)用之上的修飾。這些修飾僅是當聲明一個函數(shù)或方法的時候,才會被應用額外的調(diào)用。有點類似Java中的AOP(面向方面編程)。同時在設計模式中,還有裝飾器模式,也即是:裝飾器模式(DecoratorPattern)允許向一個現(xiàn)有的對象添加新的功能,同時又不改變其結構。原則是:不修改被修飾函數(shù)的源代碼,不修改被修飾函數(shù)的調(diào)用方式。裝飾器的用途:引入日志增加計時
系統(tǒng) 2019-09-27 17:55:09 1757