成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python實例應(yīng)用經(jīng)典講解

開發(fā) 后端
我們今天將會通過一段比較經(jīng)典的Python實例應(yīng)用來為大家詳細(xì)介紹一下有關(guān)Python這一編程語言的應(yīng)用特點,希望可以給大家?guī)硇椭?/div>

Python作為一種功能強(qiáng)大的腳本語言,給開發(fā)人員帶來了非常大的好處。那么它的具體應(yīng)用方式又是怎樣的呢?我們今天就可以通過一個經(jīng)典的Python實例應(yīng)用來詳細(xì)分析一下這一語言的具體應(yīng)用方式。#t#

Python已經(jīng)有10年的歷史了,在國外十分盛行。 Google搜索引擎的腳本,現(xiàn)在流行的BT(Bite Torrnet),還有著名的應(yīng)用服務(wù)器Zope都是用Python編寫的。但在國內(nèi)的使用還不是很多。她十分有自己的特色。語法簡潔,但功能強(qiáng)大,可以 跨平臺使用,在Linux、Windows和Mac上都有很好支持。她的設(shè)計很出色。

這里有一個Python實例應(yīng)用,都是對磁盤文件的操作,以次 來看看Python的特色。以下的程序是在 Windows平臺上完成的。在Windows上安裝Python十分方便,到Python的官方站點(www.python.org)可以免費下載 Windows平臺上的二進(jìn)制安裝包后直接安裝就可以了,安裝程序會完成所有的配置,不用象Java一樣要自己設(shè)置環(huán)境變量。

在文件夾里有六十多個RM格式的視頻文件,我現(xiàn)在需要把它們的文件名都提取出來,并去掉文件的擴(kuò)展名,以便放到需要的網(wǎng)頁里。

應(yīng)該有什么軟件可以完成這個簡單的要求,可是一時間到哪里去找這 樣一個符合要求的軟件呢?總不能手工完成把。在Linux上用強(qiáng)大的shell腳本應(yīng)該也可以完成,可是使用Windows的朋友呢?其實象這樣一個簡單 任務(wù)用Python這個強(qiáng)大腳本語言只要幾條語句就可以搞定了。個大家知道,要完成這樣一個任務(wù)根本不用動用C/C++或Java這樣的大家伙。

好來看看Python的身手,用自己喜歡的文本編輯器或者直接使用安裝包自帶的IDE都可以:

  1. # --- picknames.py ---  
  2. import os  
  3. filenames=os.listdir(os.getcwd())  
  4. for name in filenames:  
  5. filenames[filenames.index(name)]=name[:-3]  
  6. out=open('names.txt','w')  
  7. for name in filenames:  
  8. out.write(name+'\n')  
  9. out.close() 

 


這一個Python實例應(yīng)用句字不多,一句句看。

# --- picknames.py --- 是注釋行,Python是用#作為注釋符的,每行注釋的開始都要添加。Python的源代碼是一擴(kuò)展名py結(jié)尾的。

import os和其他大多數(shù)語言一樣,導(dǎo)入os這個函數(shù)庫,在Python的術(shù)語里叫模塊。

下面一句稍復(fù)雜一點用到了兩個os模塊里的函數(shù),在調(diào)用的時候用os.限定。os.getcwd()的作用是返回一個表示當(dāng)前工作目錄的字符串,若是在 D:\python目錄下執(zhí)行該程序則此函數(shù)返回的就是"D:\python"。程序中將此字符串在作為參數(shù)傳遞給os.listdir()函數(shù),它的作 用是返回一個參數(shù)所指定目錄的所有文件名字符串的列表,如果目錄內(nèi)有文件file1.rm file2.rm file3.rm,則返回值是['file1.rm','file2.rm','file3.rm']。列表Python里最常用的內(nèi)建數(shù)據(jù)類型之一,他 用[]表示,其中的元素用逗號隔開。元素可以是各種數(shù)據(jù)類型,整形、字符串,也可以是一個列表。Python是動態(tài)腳本語言,不需要申明變量就可以直接使 用,所以filenames=os.listdir(os.getcwd())將當(dāng)前工作所有文件名字符串的列表賦值給變量filenames。

  1. for name in filenames:  
  2. filenames[filenames.index(name)]=name[:-3] 

這 里大家一看就知道是一個for循環(huán),可是Python里的for循環(huán)與C語言和Java等其他一些語言中的不完全一樣。這里的循環(huán)用in關(guān)鍵字將 filenames中的元素依次賦給局部變量name,所以一循環(huán)一次name就能得到一個文件名字符串,這樣我們就可以歷遍所有的文件名了。for是復(fù) 合語句所以用冒號結(jié)束,下一行是循環(huán)體。不知大家注意到了沒有Python里沒有C/C++和Java里用來標(biāo)識語句快的花括號。這正是Python的一 大特色,Python用每行開頭的縮進(jìn)來實現(xiàn)同樣的功能。

因此,源代碼里的空格不在是為了美觀易讀,而是語法的要求。這也體現(xiàn)了Python的源代碼簡潔 緊湊的優(yōu)點。filenames[filenames.index(name)]=name[:-3]這一句,在每次循環(huán)里將name中的文件名字符串去 掉最后的3個字符,也就是.rm擴(kuò)展名,然后重新賦給filenames列表中的每個元素。Python里對列表和字符串等的操作十分靈活,name[: -3]返回了一個新的字符串。它去了name中從開頭到倒數(shù)第四個元素,-3表示從最后開始的第三個元素,但在提取操作中并不包括-3所表示的那個元素也 不改變變量name本身。filenames.index(name)返回列表里和name值相同的元素的索引。這樣我們就可以把新的文件名依次賦給 fienames了。

接著我們就可以把它們輸出到一個文本文件里,以后粘貼的到別的地 方。用out=open ('names.txt','w')打開一個名位out的文件對象,open()函數(shù)在當(dāng)前目錄里新建了一個名位names.txt的文本文件,w表示文 件對象out使用寫模式(Write Mode),參數(shù)要用單引號括住。open()是內(nèi)建函數(shù)并非os模塊里的函數(shù),因此也不用os.來限定調(diào)用。

接著又是一個循環(huán),依次將filenames里的每個字符串輸出到out文件對象中,同樣要注意行首的縮進(jìn)。

  1. for name in filenames:  
  2. out.write(name+'\n') 

out文件對象調(diào)用write方法(函數(shù)),將每次循環(huán)里不同的name的值寫到name.txt文件中。\n想必學(xué)過一點編程的人都知道,是轉(zhuǎn)意字符表示換行符。輸出完畢之后要調(diào)用close方法關(guān)閉out文件對象:

  1. out.close() 

 

這樣一個簡單的程序就完成了,將其保存為 picknames.py,然后復(fù)制到需要的目錄中。在cmd命令行提示符窗口下鍵入python picknames.py(擴(kuò)展名py不可少)或者在文件夾窗口里直接點擊運行它就可以,安裝好的解釋器會自動解釋并運行此程序。運行完畢之后就可以看到 文件夾里多了一個name.txt文件,內(nèi)容是:

  1. file1  
  2. file2  
  3. file3  
  4. ... 

 

以上就是我們?yōu)榇蠹規(guī)淼腜ython實例應(yīng)用的相關(guān)介紹。

責(zé)任編輯:曹凱 來源: 博客園
相關(guān)推薦

2009-11-19 15:01:58

2010-06-30 11:09:16

Linux SNMP

2010-05-27 17:17:37

Subversion入

2009-09-09 22:53:34

ASP.NET 時間控

2010-05-11 15:19:29

2009-11-09 09:23:10

WCF數(shù)據(jù)契約

2009-09-17 18:27:40

CLR是什么

2010-06-03 18:22:38

Hadoop

2011-04-02 16:37:26

PAT

2010-09-14 17:20:57

2009-12-29 11:11:19

2010-03-01 13:49:24

Python應(yīng)用

2009-09-18 10:40:05

CLR存儲過程

2009-09-11 09:15:32

C# get set

2010-03-08 09:43:50

.NET應(yīng)用訪問數(shù)據(jù)庫

2010-11-22 16:22:39

MySQL連接查詢

2011-05-23 13:24:01

2009-08-28 16:37:32

C# for循環(huán)

2011-04-01 09:04:09

RIP

2010-09-03 10:23:49

PPP Multili
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 亚洲精品免费观看 | 国产一区二区在线播放 | 中文字幕一区二区三区日韩精品 | 亚洲一级在线 | 国产精品色 | 国产日韩一区二区三区 | 999久久久| 亚洲精品乱码久久久久久蜜桃91 | 欧美日韩亚洲国产 | 91精品久久久久久久 | 成人在线免费观看av | 国产成人精品免费 | 国产成人综合亚洲欧美94在线 | 天天插天天操 | 亚洲国产aⅴ精品一区二区 免费观看av | 黄色在线免费看 | 亚洲免费片 | 成人在线观 | 欧美专区日韩专区 | 国产亚洲精品久久情网 | 日韩国产中文字幕 | 欧美1区2区 | av永久 | 国产福利小视频 | 99这里只有精品 | 亚洲精品美女在线观看 | 久久狠狠 | 91麻豆精品一区二区三区 | 国产精品99 | 久久国产麻豆 | 亚洲精品乱码久久久久久蜜桃91 | 一区二区在线观看av | 午夜免费 | 久久大陆 | 久久久免费少妇高潮毛片 | 亚洲免费在线视频 | aaa国产大片 | 亚洲精品久久久久久久久久久久久 | 国产在线看片 | 亚洲精品视频在线 | 亚洲国产一区二区视频 |