兩個(gè)使用Python腳本操作文件的小示例分享
1這是一個(gè)創(chuàng)建一個(gè)文件,并在控制臺(tái)寫入行到新建的文件中.
#!/usr/bin/env python
'makeTextFile.py -- create text file'
import os
ls = os.linesep
#get filename
while True:
fname = raw_input('Enter filename:')
if os.path.exists(fname):
print "ERROR: '%s' already exists" % fname
else:
break
#get file content (text) lines
all = []
print "\nEnter lines('.' by itself to quit).\n"
#loop until user terminates input
while True:
entry = raw_input('>')
if entry == '.':
break
else:
all.append(entry)
#write lines to file with proper line-ending
fobj = open(fname, 'w')
fobj.writelines(['%s%s' % (x, ls) for x in all])
fobj.close()
print 'DONE!'
os.linesep表示行結(jié)尾標(biāo)志, 用本地變量名ls代替它節(jié)省了時(shí)間,并減少了消耗系統(tǒng)資源.
用 raw_input()讀入文件名
用列表all[]來保存每一行文本(它們暫時(shí)在內(nèi)存中).
最后創(chuàng)建文件后,用writelines()把內(nèi)存中的行寫入打開的文件中.
#!/usr/bin/env python
'readTextFile.py -- read and display text file'
#get filename
fname = raw_input('Enter filename: ')
print
#attempt to open file for reading
try:
fobj = open(fname, 'r')
except IOError, e:
print "*** file open error:", e
else:
#display contents to the screen
for eachLine in fobj:
print eachLine,
fobj.close()
(1)注意:由于我們沒有移除代表每行結(jié)束的行結(jié)束符,我們不得不抵制 print 語句自動(dòng)生成的行結(jié)束符 --通過在print 語句的最后加一個(gè)逗號可以達(dá)到這一目的
print 后沒有逗號是這種效果:
(2) try-except-else是一個(gè)新出現(xiàn)的語句,其中except子句是我們處理錯(cuò)誤的地方.
注:兩個(gè)程序在執(zhí)行前,需要給文件增加可執(zhí)行權(quán)限.
$chmod a+x filename
相關(guān)文章
python如何使用pywebview打造一個(gè)現(xiàn)代化的可視化GUI界面詳解
pywebview是一個(gè)輕量級的跨平臺(tái)庫,它可以讓你在Python程序中嵌入一個(gè)瀏覽器窗口,下面這篇文章主要給大家介紹了關(guān)于python如何使用pywebview打造一個(gè)現(xiàn)代化的可視化GUI界面的相關(guān)資料,需要的朋友可以參考下2024-07-07
python利用遞歸方法實(shí)現(xiàn)求集合的冪集
這篇文章主要給大家介紹了關(guān)于python利用遞歸方法實(shí)現(xiàn)求集合的冪集的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
總結(jié)的幾個(gè)Python函數(shù)方法設(shè)計(jì)原則
這篇文章主要介紹了總結(jié)的幾個(gè)Python函數(shù)方法設(shè)計(jì)原則,本文講解了每個(gè)函數(shù)只做一件事、保持簡單、保持簡短、輸入使用參數(shù)、輸出使用return語句等內(nèi)容,需要的朋友可以參考下2015-06-06
Python使用try except處理程序異常的三種常用方法分析
這篇文章主要介紹了Python使用try except處理程序異常的三種常用方法,結(jié)合實(shí)例形式分析了Python基于try except語句針對異常的捕獲、查看、回溯等相關(guān)操作技巧,需要的朋友可以參考下2018-09-09
pandas分組聚合(agg,transform,apply)
在SQL中我們經(jīng)常使用 GROUP BY 將某個(gè)字段,按不同的取值進(jìn)行分組, 在pandas中也有g(shù)roupby函數(shù),本文主要介紹了pandas分組聚合(agg,transform,apply),具有一定的參考價(jià)值,感興趣的可以了解一下2024-04-04
python實(shí)現(xiàn)顏色rgb和hex相互轉(zhuǎn)換的函數(shù)
這篇文章主要介紹了python實(shí)現(xiàn)顏色rgb和hex相互轉(zhuǎn)換的函數(shù),可實(shí)現(xiàn)將rgb表示的顏色轉(zhuǎn)換成hex值的功能,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2015-03-03

