Python的流行度屢創新高,作為大數據和人工智能時代的必備語言,Python優點頗多,它語言簡潔、開發效率高、可移植性強,經過多年的生態建設,Python有了大量的函數庫,尤其在數據分析和科學計算領域。另外,函數在Python中是一等公民,所以Python同時也是一種函數式編程語言。為了在大數據和AI時代更具競爭力,學Python的程序員越來越多,甚至不少人把Python當作第一語言來學習。許多人覺得Python功能強大還上手輕松,學習曲線也沒那么陡峭,
系統 2019-09-27 17:45:32 1626
目錄一、Python進階實戰之三級菜單1.1面條版1.2文藝青年版一、Python進階實戰之三級菜單打印省、市、縣三級菜單可返回上一級可隨時退出程序1.1面條版menu={'北京':{'海淀':{'五道口':{'soho':{},'網易':{},'google':{}},'中關村':{'愛奇藝':{},'汽車之家':{},'youku':{},},'上地':{'百度':{},},},'昌平':{'沙河':{'老男孩':{},'北航':{},},'天通苑':
系統 2019-09-27 17:45:30 1626
在平時的工程中,我們在構建工程時,常常需要用到配置文件,用來配置項目的一些信息,比如數據庫,請求網址,文件夾,線程、進程數等信息,這樣就可以方便我們通過修改配置文件中的參數來很好地完成整個項目的功能修改或開發。配置文件一般區別于Python代碼,會單獨存放在一個文件夾中,方便管理,常見的配置文件格式有.conf,.ini,.yaml等。本文使用Python中的configparser模塊來處理conf、ini配置文件。首先需要安裝configparser模
系統 2019-09-27 17:45:29 1626
在python的lib目錄里有一個:this.py,它其實是隱藏著一首詩,源碼如下:復制代碼代碼如下:s="""GurMrabsClguba,olGvzCrgrefOrnhgvshyvforggregunahtyl.Rkcyvpvgvforggregunavzcyvpvg.Fvzcyrvforggregunapbzcyrk.Pbzcyrkvforggregunapbzcyvpngrq.Syngvforggregunaarfgrq.Fcnefrvforggr
系統 2019-09-27 17:38:46 1626
在介紹yield前有必要先說明下Python中的迭代器(iterator)和生成器(constructor)。一、迭代器(iterator)在Python中,for循環可以用于Python中的任何類型,包括列表、元祖等等,實際上,for循環可用于任何“可迭代對象”,這其實就是迭代器迭代器是一個實現了迭代器協議的對象,Python中的迭代器協議就是有next方法的對象會前進到下一結果,而在一系列結果的末尾是,則會引發StopIteration。任何這類的對象
系統 2019-09-27 17:38:45 1626
大體上把Python中的數據類型分為如下幾類:Number(數字)包括int,long,float,complexString(字符串)例如:hello,"hello",helloList(列表)例如:[1,2,3],[1,2,3,[1,2,3],4]Dictionary(字典)例如:{1:"nihao",2:"hello"}Tuple(元組)例如:(1,2,3,abc)Bool(布爾)包括True、False由于Python中認為所有的東西都是對象,所以
系統 2019-09-27 17:38:45 1626
最近研究研究了css,少不了去網上分析一下別人的網頁,但很多網站的css文件都是要么寫在一行,要么一個換行都沒有,看起來極其痛苦,所以寫一個腳本轉換一下,轉換為比較有可讀性的格式。下面就是這個腳本:importstring,sysimportre,StringIOTAB=4defformat(ss):f=open(ss,"r")data=f.read()f.close()dlen=len(data)i=0buf=StringIO.StringIO()sta
系統 2019-09-27 17:38:44 1626
概述考慮這樣一個問題,有hello.py腳本,輸出”hello,world!”;有TestInput.py腳本,等待用戶輸入,然后打印用戶輸入的數據。那么,怎么樣把hello.py輸出內容發送給TestInput.py,最后TestInput.py打印接收到的”hello,world!”。下面我來逐步講解一下shell的交互方式。hello.py代碼如下:#!/usr/bin/pythonprint"hello,world!"TestInput.py代碼如
系統 2019-09-27 17:38:38 1626
1、操作目錄與文件名#!/usr/bin/envpython#-*-coding:utf-8-*-importos,reimportshutilimporttime用listdir搜索defsearch_OFD_old(my_pattern,diretory):try:names=os.listdir(diretory)exceptos.error:print"error"returnfornameinnames:fullname=os.path.norm
系統 2019-09-27 17:38:36 1626
有些時候我們不得不在自己的代碼里寫上密碼,為了安全起見,我們可以為自己的密碼加密先上段代碼,這個代碼是轉自網上root@ProFtp:/usr/lib/python2.7#morejastmencrypt.py"""jastmeencryptpassword"""defencrypt(key,s):b=bytearray(str(s).encode("gbk"))n=len(b)#求出b的字節數c=bytearray(n*2)j=0foriinrange(
系統 2019-09-27 17:38:35 1626
Pythonsocket網絡編程初學python,前段時間買了兩本書《python編程從入門到實踐》《Python核心編程第三版》,第一本書主要講的是一些基本語法和一些基本的使用方法,而第二本則深入很多,自己看來也是一知半解,剛好看到了這部分網絡編程,依然有好多不太理解的地方,不過想來通過自己不斷的摸索,不斷地搜尋資料學習,早晚應該會變得通透吧.......這部分主要使用的模塊就是socket模塊,在這個模塊中可以找到socket()函數,該函數用于創建套
系統 2019-09-27 17:38:34 1626
1、安裝virtulenv、virtulenvwrapper包pipinstallvirtualenvvirtualenvwrapper2、virtualenvwrapper是virtualenv的擴展工具,可以方便的創建、刪除、復制、切換不同的虛擬環境。3、設置環境變量,把下面兩行添加到~/.bash_profile里exportWORKON_HOME=/software/venvsource/usr/local/bin/virtualenvwrappe
系統 2019-09-27 17:38:34 1626
一、什么是遞歸如果函數包含了對其自身的調用,該函數就是遞歸的。遞歸做為一種算法在程序設計語言中廣泛應用,它通常把一個大型復雜的問題層層轉化為一個與原問題相似的規模較小的問題來求解,遞歸策略只需少量的程序就可描述出解題過程所需要的多次重復計算,大大地減少了程序的代碼量。例如,要計算1-9的9位數字的乘積,直觀的算法是1*2*3*4*5*6*7*8*9,如果要計算1-10000的乘積,直觀的算法就難于實現出,而遞歸就可以很簡單的實現。請看示例:deffact(
系統 2019-09-27 17:38:31 1626
大家請注意:這篇文中假設我們都用的是Python31.列表推導式你有一個list:bag=[1,2,3,4,5]現在你想讓所有元素翻倍,讓它看起來是這個樣子:[2,4,6,8,10]大多初學者,根據之前語言的經驗會大概這樣來做bag=[1,2,3,4,5]foriinrange(len(bag)):bag[i]=bag[i]*2但是有更好的方法:bag=[elem*2foreleminbag]很簡潔對不對?這叫做Python的列表推導式。2.遍歷列表繼續,
系統 2019-09-27 17:38:30 1626
實現代碼:#!/usr/bin/python//處理程序#filenamejiafa.py//文件名importsysimportrandomrunning=True//定義runningwhilerunning:a=random.randint(0,15)//定義a的值為0-15的隨機數b=random.randint(0,10)//定義b的值為0-10的隨機數printa,'*',b//輸出題目he=a*bgauess=int(raw_input('P
系統 2019-09-27 17:38:29 1626