python 精華技巧

2021-10-24 05:51:40 字數 1700 閱讀 5905

1、大量的if-else結構採用字典key來匹配。

days =

"mon tue wed thu fri sat sun"

.split(

)classes =

"eng chi mat phy che res"

.split(

)week_classes =

dict

(zip

(days, classes)

)def

get_calss

(day)

:if day not

in week_classes:

raise valueerror(

"not a correct day"

)else

:return week_classes.get(day)

print

(get_calss(

"sat"

))

2、清楚的異常宣告比含蓄的要好,不要圖省事。

def

get_num

(num1, num2)

:try

: result = num1/num2

except zerodivisionerror:

print

("不能被0整除"

)return

0except typeerror:

print

("請檢查輸入的變數是否為整數"

)raise

except exception as e:

print

("其他錯誤:, 上拋錯誤"

)raise

3、巧妙的利用yield來取代遞迴

注:含有yield的函式是乙個生成器,多個生成器巢狀則用yield from。

import os

deffind_files

(root_dir=

"/user/"

, res=

none):

ifnot res:

res =

for f in os.listdir(root_dir)

: file_path = os.path.join(root_dir, f)

if os.path.isfile(f)

:elif os.path.isdir(f)

: find_files(file_path, res)

return res

優化後:

def

get_files

(folder)

:for item in os.listdir(folder)

: file_path = os.path.join(folder, item)

if os.path.isfile(item)

:yield file_path

elif os.path.isdir(item)

:yield

from find_files(item)

root_dir =

"/user/"

print

(list

(get_files(root_dir)

))

PHP的精華和技巧總結

很多的php程式設計師,尤其是學習還不是很久的,都不知道php的精華所在。perl當年如何在商界出名?其強大的正規表示式。而php呢?他是一門從unix下發展起來的語言,當然也就繼承了perl的很多特點,同時c的優點都有。快速 簡潔 明了,尤其是c程式設計師,php是至愛,我就是深愛著 php 都忘...

Tomcat的配置技巧精華詳解(1)

tomcat按照自己的方式,同樣提供乙個成熟的管理工具,並且絲毫不遜於那些商業化的競爭對手。tomcat tomcat安裝目錄下的server目錄 如果你使用userdatabaserealm 預設 你將需要新增乙個user以及乙個role到catalina base conf tomcat use...

Tomcat的配置技巧精華詳解(2)

3 部署乙個web應用有兩個辦法可以在系統中部署web服務。tomcat監聽到這個檔案,它將 預設的 解開該檔案包作為乙個子目錄,並以war檔案的檔名作為子目錄的名字。接下來,tomcat將在記憶體中建立乙個context,就好象你在server.xml檔案裡建立一樣。當然,其他必需的內容,將從se...