Python——追加學習筆記(二)

來源:互聯網
上載者:User

標籤:檔案中   不同   argv   重新整理   產生   tmp   關閉   access   時間   

檔案處理
# 檔案內移動seek()方法可以在檔案中移動檔案指標到不同的位置,offset位元組代表相對於某個位置位移量,預設為0,代表從檔案開頭算起,1代表從當前位置算起,2代表從檔案末尾算起。seek()經常用來重設檔案位置指標。eg.>>> f.name‘anaconda-ks.cfg‘>>> f.next()‘#version=DEVEL\n‘>>> f.next()‘# System authorization information\n‘>>> f.seek(0)>>> f.next()‘#version=DEVEL\n‘text()方法是對seek()方法的補充:他告訴你當前檔案指標在檔案中的位置——從檔案起始算起,單位為位元組。# 其他fileno()方法返回開啟檔案的描述符,這是一個整形,可以用在如os模組(os.read())的一些底層操作上。eg.>>> f = open(‘anaconda-ks.cfg‘, ‘r‘)>>> print f.fileno()3flush()方法會直接把內部緩衝區的資料立刻寫入檔案,而不是被動地等待輸出緩衝區被寫入。一般用在檔案關閉前重新整理緩衝區。isatty()是一個布爾內建函數,當檔案是一個類tty裝置是返回True,否則返回False。eg.>>> f.isatty()Falsetruncate()方法將檔案截取到當前檔案指標位置或者到給定size,一位元組為單位。可以清空檔案。## 分行符號print輸出會在末尾自動增加一個分行符號,而在語句之後增加一個逗號就可以避免這種行為。readline()和readlines()函數不會對行裡的空白字元做任何處理,所以你有必要增加上逗號。如果省略逗號就會有兩個分行符號,其中一個是輸入附帶的,另外一個是print語句自動添加的。eg.>>> print ‘Hello World!‘;print ‘Yes, We Can!‘Hello World!Yes, We Can!>>> print ‘Hello World!‘,;print ‘Yes, We Can!‘Hello World! Yes, We Can!## 檔案內建屬性file.closed # 檔案是否關閉file.name  #檔案名稱file.mode   #開啟檔案的方式## 檔案操作os.rename(old, new) #重新命名os.mkdir()  #建立檔案夾os.remove() #刪除檔案os.chdir()  #切換檔案夾os.getcwd() #得到當前路徑os.rmdir()  #刪除檔案夾補充:* 檔案處理mkfifo()/mknod()  #建立具名管道/建立檔案系統節點remove()/unlink() #刪除檔案rename()/renames() #重新命名檔案*stat() [包括stat()、lstat()、xstat()] #返迴文件資訊eg.>>> import os>>> os.system(‘ls‘)anaconda-ks.cfg  fan  lustre-master.zip  test.log0>>> os.stat(‘anaconda-ks.cfg‘)posix.stat_result(st_mode=33152, st_ino=9240863, st_dev=64768L, st_nlink=1, st_uid=0, st_gid=0, st_size=955, st_atime=1513158628, st_mtime=1509810306, st_ctime=1509810306)symlink() #建立符號連結utime() #更新時間戳記tmpfile()   #建立並開啟(‘w+b’)一個新的臨時檔案walk()  #產生一個分類樹下的所有檔案名稱* 目錄/檔案夾chdir()/fchdir() #改變目前的目錄/通過一個檔案描述符改變當前工作目錄chroot #改變當前進程的根目錄listdir()   #列出指定目錄的檔案* 訪問/許可權access()    #檢驗許可權模式chmod()     #改變許可權模式chown()/lchown()      #改變owner和group ID/功能相同,但不會跟蹤連結umask()     #設定預設許可權模式* 檔案描述符操作open()      #底層的作業系統open(對於檔案來說,使用標準的內建open()函數)read()/write()      #根據檔案描述符讀取/寫入資料dup()/dup2()        #複製檔案描述符/功能相同,但是是複製到另一個檔案描述符* 裝置號makedev()       #從major和minor裝置號建立一個原始裝置號major()/minor()     #從原始裝置號獲得major/minor裝置號## os.path模組中的路徑名訪問函數* 分割basename()      #去掉目標路徑,返迴文件名dirname()       #去掉檔案名稱,返回目錄路徑join()      #將分離的各部分組合成一個路徑名split()     #返回(dirname(),basename())元組splitdrive()        #返回(drivename,pathnam)元組splittext()     #返回(filename, extension)元組* 資訊getatime()      #返回最近返問時間getctime()      #返迴文件建立時間getmtime()      #返迴文件最近修改時間getsize()       #返迴文件大小(以位元組為單位)eg.     >>> os.path.getsize(‘test.log‘)48* 查詢exists()    #指定路徑(檔案或者目錄)是否存在isabs()     #指定路徑是否為絕對路徑isdir()     #指定路徑是否存在且為一個目錄isfile()    #指定路徑是否存在且為一個檔案islink()       #指定路徑是否存在且為一個符號連結ismount()       #指定路徑是否存在且為一個掛載點samefiel()      #兩個路徑名是否指向一個檔案eg. >>> os.path.exists(‘test.log‘)True>>> os.path.isfile(‘test.log‘)True>>> os.path.isdir(‘test.log‘)False>>> os.path.islink(‘test.log‘)False>>> os.system(‘cp test.log test01.log‘)0>>> os.system(‘ls‘)anaconda-ks.cfg  fan  lustre-master.zip  test01.log  test.log0>>> os.path.samefile(‘test.log‘, ‘test01.log‘)False## 命令列參數sys.argv 是命令列參數的列表len(sys.argv)是命令列參數的個數sys.argv[0]是程式的名稱## 相關模組bz2         #訪問BZ2格式的壓縮檔csv         #訪問CSV檔案filecmp     #用於比較目錄和檔案gzip/zlib   #讀取GNU zip(gzip)檔案(壓縮需要zlib模組)zipfile     #用於讀取ZIP歸檔檔案的工具

Python——追加學習筆記(二)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.