1. 程式人生 > >Python那些事——你不知道的python的“獨門暗器”!

Python那些事——你不知道的python的“獨門暗器”!

隨著近幾年人工智慧的流行,從而引發了一個程式語言的興起,我想說到這,大家應該都明白了這是什麼吧,沒錯它就是大名鼎鼎的——Python

對於python,我給大家總結了以下幾點:

Python 是一個高層次的結合瞭解釋性、編譯性、互動性和麵向物件的指令碼語言。

Python 的設計具有很強的可讀性,相比其他語言經常使用英文關鍵字,其他語言的一些標點符號,它具有比其他語言更有特色語法結構。

Python 是一種解釋型語言: 這意味著開發過程中沒有了編譯這個環節。類似於PHP和Perl語言。

Python 是互動式語言: 這意味著,您可以在一個Python提示符,直接互動執行寫你的程式。

Python 是面嚮物件語言: 這意味著Python支援面向物件的風格或程式碼封裝在物件的程式設計技術。

Python 是初學者的語言:Python 對初級程式設計師而言,是一種偉大的語言,它支援廣泛的應用程式開發,從簡單的文書處理到 WWW 瀏覽器再到遊戲。

在這裡,我給大家就分享一個關於Python的奇技淫巧吧!

在這裡還是要推薦下我自己建的Python開發學習裙:304   零伍零   799,裙裡都是學Python開發的,如果你正在學習Python ,小編歡迎你加入,大家都是軟體開發黨,不定期分享乾貨(只有Python軟體開發相關的),包括我自己整理的一份2018最新的Python進階資料和高階開發教程,歡迎進階中和進想深入Python的小夥伴

1.控制檯操作控制檯不閃退

os.system('pause')

2.獲取控制檯大小

rows, columns = os.popen('stty size', 'r').read().split()

3.輸入輸出控制解決輸入提示中文亂碼問題

raw_input(unicode('請輸入文字','utf-8').encode('gbk'))

4.格式化輸出

print a.prettify()

5.接受多行輸入

text=""while 1:data=raw_input(">>")if data.strip()=="stop":breaktext+="%s " % dataprint text--------------------------->>1>>2>>3>>stop123

6.同行輸出

Print '%s' % a,Print '%s ' % a

7.標準輸入輸出

sys.stdout.write("input") 標準輸入sys.stdout.flush() 重新整理緩衝區

8.print的功能與sys.stdout.write類似,因為2.x中print預設就是將輸出指定到標準輸出中(sys.stdout)。顏色控制控制檯顏色控制(適用於windows)

WConio.textcolor(WConio.YELLOW)print "yellow"WConio.textcolor(WConio.BLUE)print "blue"

9.輸出顏色控制(全平臺)

red = '[1;31m'green = '[1;32m'yellow = '[1;33m'white = '[1;37m'reset = '[0m’print red+"color is red"+resetprint green+"color is green"+reset

10.進度條控制

方案一

from __future__ import divisionimport sys,timej = '#'for i in range(1,61):j += '#'sys.stdout.write(str(int((i/60)*100))+'% ||'+j+'->'+" ")sys.stdout.flush()time.sleep(0.1)

方案二

import sysimport timefor i in range(1,61):sys.stdout.write('#'+'->'+"")sys.stdout.flush()time.sleep(0.5)

方案三

from progressbar import *import timeimport osrows, columns = os.popen('stty size', 'r').read().split() #獲取控制檯sizeconsole_width=int(columns)total = 10progress = ProgressBar()def test():'''進度條函式,記錄進度'''for i in progress(range(total)):test2()def test2():'''執行函式,輸出結果'''content="nMask'Blog is http://thief.one"sys.stdout.write(" "+content+" "*(console_width-len(content)))time.sleep(1)sys.stdout.flush()test()

11.更多高階用法可以使用progressbar模組。系統作業系統資訊獲取python安裝路徑

from distutils.sysconfig import get_python_libprint get_python_lib

12.獲取當前時間

c=time.ctime()#自定義格式輸出ISOTIMEFORMAT=’%Y-%m-%d %X’time.strftime( ISOTIMEFORMAT, time.localtime() )

13.檢視系統環境變數

os.environ["PATH"]

14.獲取系統磁碟

os.popen("wmic VOLUME GET Name")

15.獲取當前路徑(包括當前py檔名)

os.path.realpath(__file__)

16.當前平臺使用的行終止符

os.linesep

17.獲取終端大小

rows, columns = os.popen('stty size', 'r').read().split()#python3以後存在可以使用osos.get_termial_size()

18.退出程式

return:返回函式的值,並退出函式。

exit():直接退出。

sys.exit(): 引發一個SystemExit異常,若沒有捕獲錯誤,則python程式直接退出;捕獲異常後,可以做一些額外的清理工作。

sys.exit(0):為正常退出,其他(1-127)為不正常,可拋異常事情供捕獲。(一般用於主執行緒中退出程式)

os._exit(0): 直接退出python程式,其後的程式碼也不會執行。(一般用於執行緒中退出程式)

19.網路操作域名解析為ip

ip= socket.getaddrinfo(domain,'http')[0][4][0]

獲取伺服器版本資訊

sUrl = 'http://www.163.com'sock = urllib2.urlopen(sUrl)sock.headers.values()

20.檔案操作輸出一個目錄下所有檔名稱

def search(paths):if os.path.isdir(paths): #如果是目錄files=os.listdir(paths) #列出目錄中所有的檔案for i in files:i=os.path.join(paths,i) #構造檔案路徑search(i) #遞迴elif os.path.isfile(paths): #如果是檔案print paths #輸出檔名

寫在最後

前幾天有私信我要Python的學習資料,我連夜整理了一些有深度的Python教程和參考資料,從入門到高階的都有,檔案已經打包好了,正在學習Python的同學可以免費下載學習學習。檔案下載方式關注微信公眾號:程式設計師大牛,回覆Python即可下載。首先把程式碼擼起來!首先把程式碼擼起來!首先把程式碼擼起來!重要的事說三遍,哈哈。“程式設計是門手藝活”。什麼意思?得練啊。