本文目錄一覽:
- 1、python如何提取文件名字?
- 2、python 獲取文件後綴名
- 3、python讀寫文件
- 4、python文件名通常以什麼結尾
- 5、python文件是以什麼為擴展名的文件
- 6、python文件後綴是什麼
python如何提取文件名字?
一般完整的文件為:「文件名」.「文件格式」,可以通過「.」來獲取文件名。\x0d\x0aimport os\x0d\x0afile_name=[]\x0d\x0astr_file=os.getcwd()#當前腳本路徑\x0d\x0afor dirpaths, dirnames, filenames in os.walk(str_file):\x0d\x0a for filename in filenames:\x0d\x0a if “.” in filename:\x0d\x0a\x0d\x0a filename=filename.split(“.”)[0]#以「.」為分割點獲取文件名\x0d\x0a\x0d\x0a file_name.append(filename)\x0d\x0a\x0d\x0aprint file_name
python 獲取文件後綴名
我寫了個小文件,希望能幫到樓主
=========count_file.py=============
#coding:utf-8
import os
”’
使用os.walk()統計文件類型
”’
#定義result字典用來存儲
result = {}
for directory, folders, files in os.walk(‘/home/zhulei’):
for f in files:
if ‘.’ in f:
#獲得文件類型
file_type = f.rsplit(‘.’,1)[1]
if result.has_key(file_type):
result[file_type] += 1
else:
result[file_type] = 1
print “文件類型\t\t個數”
print “=”*40
for type, count in sorted(result.items(),key=lambda x:x[1],reverse=True):
if len(type) = 8:
print “%s\t\t%s” % (type, count)
else:
print “%s\t\t\t%s” % (type, count)
==============================
運行結果:
%python count_file.py
文件類型 個數
========================================
png 2107
c 1639
h 1276
py 1160
gif 1017
svn-base 966
TXT 899
jpg 831
html 539
…
…
…
python讀寫文件
讀文件
1)使用open()方法打開文件,返回一個文件對象
原型:open(file, mode=’r’, buffering=None, encoding=None, errors=None, newline=None, closefd=True)
舉例:f = open(‘test.txt’, ‘r’)
test.txt表示文件路徑(包含文件名,這個file參數可以是絕對或者相對路徑)
r表示是讀文本文件,rb是讀二進位文本文件。(這個mode參數默認值就是r)
2)使用close()方法關閉文件
f.close()
打開後的文件必須關閉,因為文件對象會佔用系統資源,系統打開文件數量也就有限了
3)打開文件時的異常處理
f=open(‘test.txt’, ‘r’)
f.read()
f.close()
FileNotFoundError: [Errno 2] No such file or directory: ‘test.txt’
文件讀寫時都有可能產生異常IOError(比如文件不存在),這樣其後面的f.read(),f.close()就不會調用。為保證無論是否異常都可以關閉文件,一般使用try … finally來處理:
try:
f = open(‘test.txt’, ‘r’)
f.read()
finally:
if f:
f.close()
但這種寫法過於繁瑣,所以Python引入了with語句來自動調用close()方法:
with open(‘test.txt’, ‘r’) as f:
f.read()
4)讀文件 – read()、readline() 和 readlines()
read() 一次讀取整個文件,它通常用於將文件內容放到一個字元串變數中。如果文件過大,內存不夠,可以通過反覆調用read(size)方法,每次最多讀取size個位元組的內容。
readline() 一次讀取文件中一行內容,可反覆調用
readlines() 一次讀取所有內容並按行返回列表,該列表可以由for … in … 結構再進一步處理。
特別注意:
這三種方法是把每行末尾的’\n’也讀進來了,如有需要就得我們手動去掉’\n’
with open(‘test.txt’, ‘r’) as f:
list = f.readlines()
for i in range(0, len(list)):
list[i] = list[i].rstrip(‘\n’)
寫文件
1)寫文件和讀文件是一樣的,唯一區別是open文件時,傳入標識符不同,即’w’或者’wb’表示寫文本文件或寫二進位文件
f = open(‘test.txt’, ‘w’)
f = open(‘test.txt’, ‘wb’)
f = open(‘test.txt’, ‘a’)
f.close()
特別注意:
1. 如果沒有這個文件,會自動創建一個新文件;如果有,就會先把原文件的內容清空再寫入;若不想清空原來的內容而是直接在後面追加新的內容,就用’a’這個模式
2. 寫文件,操作系統往往不會立刻把數據寫入磁碟,而是放到內存緩存起來,空閑的時候再慢慢寫入。只有調用close()方法時,操作系統才保證把沒有寫入的數據全部寫入磁碟。忘記調用close()的後果是數據可能只寫了一部分到磁碟,剩下的丟失了。
2)寫文件 – write()、writelines()
write()方法和read()、readline()方法對應,是將字元串寫入到文件中。
writelines()方法和readlines()方法對應,也是針對 列表 的操作。它接收一個 字元串列表 作為參數,將他們寫入到文件中。
特別注意:
換行符不會自動的加入,需要顯式的加入換行符。
f = open(‘test.txt’, ‘w’)
f.writelines([“111\n”, “222\n”, “333\n”])
補充說明:
1)對於非默認編碼(utf-8)的文件,需要open時添加encording參數,選擇對應的編碼方式
2)r+, w+, a+,可讀可寫
3)seek()方法,移動文件指針
seek(offset[, whence]) ,offset是相對於某個位置的偏移量。位置由whence決定,默認whence=0,從開頭起;whence=1,從當前位置算起;whence=2相對於文件末尾移動,通常offset取負值。
python文件名通常以什麼結尾
python文件後綴一般有兩個,分別是.py和.pyw
視窗用 python.exe 運行 .py ,用 pythonw.exe 運行 .pyw 。
這純粹是因為安裝視窗版 Python 時,擴展名 .py 自動被登記為用 python.exe 運行的文件,
而 .pyw 則被登記為用 pythonw.exe 運行。
.py 和 .pyw 之間的「其它差別」全都是 python.exe 和 pythonw.exe 之間的差別。
跟 python.exe 比較起來,pythonw.exe 有以下的不同:
1)執行時不會彈出控制台窗口(也叫 DOS 窗口)
2)所有向原有的 stdout 和 stderr 的輸出都無效
3)所有從原有的 stdin 的讀取都只會得到 EOF
.pyw 格式是被設計來運行開發完成的純圖形界面程序的。
純圖形界面程序的用戶不需要看到控制台窗口。
值得一提的是,開發純圖形界面程序的時候,你可以暫時把 .pyw 改成 .py ,
以便運行時能調出控制台窗口,看到所有錯誤信息,方便除蟲。
python文件是以什麼為擴展名的文件
Python程序的擴展名有.py、.pyc、.pyo和.pyd。.py是源文件,.pyc是源文件編譯後的文件,.pyo是源文件優化編譯後的文件,.pyd是其他語言寫的Python庫。
在寫Python程序時我們常見的擴展名是py,pyc,其實還有其他幾種擴展名。以下是詳細內容介紹:
py:py就是最基本的源碼擴展名。Windows下直接雙擊運行會調用Python.exe執行。
pyw:pyw是另一種源碼擴展名,跟py唯一的區別是在Windows下雙擊pyw擴展名的源碼會調用Pythonw.exe執行源碼,這種執行方式不會有命令行窗口。主要用於GUI程序發布時不需要看到控制台信息的情況。
pyc:在執行Python代碼時經常會看到同目錄下自動生成同名的pyc文件。這是Python源碼編譯後的位元組碼,一般會在代碼執行時自動生成你代碼中引用的py文件的pyc文件。這個文件可以直接執行,用文本編輯器打開也看不到源碼。
pyo:pyo是跟pyc類似的優化編碼後的文件。
pyd:pyd並非從Python程序生成,而是其他語言寫成的可以被Python調用的擴展。
python文件後綴是什麼
python文件後綴總結:
(1).py:這通常是您編寫的輸入源代碼。
(2).py3:Python3腳本(Python3腳本通常以.py而不是.py3結尾,很少使用)。
(3).pyc:這是編譯好的位元組碼。如果導入一個模塊,python將生成一個*.pyc包含位元組碼的文件,以便再次導入它更容易(也更快)。
.pyc二進位文件可以反編譯成.py文件,反編譯軟體叫Easy Python Decompiler。
(4).pyo:這是在優化(-O)時創建的*.pyc文件,從Python3.5開始,Python將只使用.pyc而不是.pyo和.pyc。
(5).pyd:這基本上是一個Windows DLL文件。
(6).pyi:MyPy存根,存根文件(PEP 484)。
(7).pyw:用pythonw.exe執行的Windows的Python腳本。
(8).pyx:將Cython src轉換為C/C++。
(9).pyz:Python腳本歸檔(PEP 441)(這是一個包含標準Python腳本頭之後的二進位形式的壓縮Python腳本(ZIP)的腳本)。
(10).pywz:用於MS-Windows的Python腳本歸檔(PEP 441)(這是一個包含標準Python腳本頭之後的二進位形式的壓縮 Python腳本(ZIP)的腳本)。
(11).py [cod]:.gitignore中的通配符表示該文件可能是.pyc,.pyo或.pyd。
(12).rpy:包含應用程序或框架特定功能的RPython腳本或Python腳本。
(13).pyde:處理使用的Python腳本。
(14).pyp:Py4D Python插件。
(15).pyt:Python聲明文件。
眾多python培訓視頻,盡在python學習網,歡迎在線學習!
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/180299.html