代碼中經常會有變量是否為None的判斷,有三種主要的寫法:第一種是`ifxisNone`;第二種是`ifnotx:`;第三種是`ifnotxisNone`(這句這樣理解更清晰`ifnot(xisNone)`)。如果你覺得這樣寫沒啥區別,那么你可就要小心了,這里面有一個坑。先來看一下代碼:>>>x=1>>>notxFalse>>>x=[1]>>>notxFalse>>>x=0>>>notxTrue>>>x=[0]#Youdon'twanttofallinth
系統 2019-09-27 17:38:05 1704
實際上,Python提供了with語句來管理資源關閉。比如可以把打開的文件放在with語句中,這樣with語句就會幫我們自動關閉文件。with語句的語法格式如下:withcontextexpression[astarget(s)]:with代碼塊在上面的語法格式中,context_expression用于創建可自動關閉的資源。例如,程序使用with語句來讀取文件:importcodecs#使用with語句打開文件,該語句會負責關閉文件withcodecs.
系統 2019-09-27 17:38:03 1704
這里以監控內存使用率為例,寫的一個簡單demo性程序,具體操作根據51reboot提供的教程寫如下。一、建庫建表創建falcon數據庫:mysql>createdatabasefalconcharactersetutf8;QueryOK,1rowaffected(0.00sec)創建內存監控使用的表stat,表結構如下:CREATETABLE`stat`(`id`int(11)unsignedNOTNULLAUTO_INCREMENT,`host`varc
系統 2019-09-27 17:37:58 1704
GIL在Python中,由于歷史原因(GIL),使得Python中多線程的效果非常不理想.GIL使得任何時刻Python只能利用一個CPU核,并且它的調度算法簡單粗暴:多線程中,讓每個線程運行一段時間t,然后強行掛起該線程,繼而去運行其他線程,如此周而復始,直到所有線程結束.這使得無法有效利用計算機系統中的"局部性",頻繁的線程切換也對緩存不是很友好,造成資源的浪費.據說Python官方曾經實現了一個去除GIL的Python解釋器,但是其效果還不如有GIL
系統 2019-09-27 17:37:58 1704
Python的標準庫中的os模塊包含普遍的操作系統功能。如果你希望你的程序能夠與平臺無關的話,這個模塊是尤為重要的。即它允許一個程序在編寫后不需要任何改動,也不會發生任何問題,就可以在Linux和Windows下運行。下面列出了一些在os模塊中比較有用的部分。它們中的大多數都簡單明了。os.sep可以取代操作系統特定的路徑分隔符。windows下為“\\”os.name字符串指示你正在使用的平臺。比如對于Windows,它是'nt',而對于Linux/Un
系統 2019-09-27 17:37:58 1704
Python安裝Django本身是純Python編寫的,所以安裝框架的第一步是確保你已經安裝了Python。Python版本核心Django框架可以工作在2.3至2.6(包括2.3和2.6)之間的任何Python版本。Django的可選GIS(地理信息系統)支持需要Python2.4到2.6。如果你不確定要安裝Python的什么版本,并且你完全拿不定主意的話,那就選2.x系列的最新版本吧。版本2.6。雖然Django在2.3至2.6版之間的任意Python
系統 2019-09-27 17:37:57 1704
一、含有一個裝飾器#encoding:utf-8############含有一個裝飾器#########defouter(func):definner(*args,**kwargs):#要裝飾f1(),這里用這倆形式參數,可以接受任意個參數,不管f1定義幾個參數print"1"r=func(*args,**kwargs)#這里要用func,不要用f1print"2"returnrreturninner@outer#這里outer不要加括號deff1(a1,
系統 2019-09-27 17:37:53 1704
1、raw_input():raw_input()是python的內建函數,通過讀取控制臺的輸入與用戶實現交互。raw_input()可以讓用戶輸入字符串(即等待用戶輸入內容),并存放到一個變量里。#!/usr/bin/envpython#-*-coding:utf-8-*-#將用戶輸入的內容賦值給變量useruser=raw_input("請輸入用戶名:")#將用戶輸入的內容賦值給變量pwdpwd=raw_input("請輸入密碼:")#打印輸入的內容p
系統 2019-09-27 17:37:51 1704
先使用一些關鍵參數創建對象實例,如下:>>>p=Publisher(name='Apress',...address='2855TelegraphAve.',...city='Berkeley',...state_province='CA',...country='U.S.A.',...website='http://www.apress.com/')這個對象實例并沒有對數據庫做修改。在調用``save()``方法之前,記錄并沒有保存至數據庫,像這樣:>>
系統 2019-09-27 17:37:48 1704
異常(exceptions)是Python中一種非常重要的類型,它和語法錯誤不同,是在程序運行期間引發的錯誤。Python中內置了很多異常,如IOError,NameError,KeyboardInterrupt等,更多的異常可以點擊這里。異常的意義在于提供一種更加優雅的運行方式,例如用Python編寫一個計算器,如果用戶輸入不能計算的對象,則可以拋出異常,并進行處理,如下:whileTrue:try:x=int(input('PleaseInenterA
系統 2019-09-27 17:37:47 1704