ファイル
テキストファイルの読み込み
import string
fp = open('test.txt', 'r')
while True:
data = fp.readline()
if len(data) == 0:
break
print string.rstrip(data, '\n')
fp.close()
ファイルの全部の読み込み
import string
fp = open('test.txt', 'r')
data = fp.read()
print data
fp.close()
ファイルのコピー
import shutil
shutil.copyfile('test.dat', 'test1.dat')
ディレクトリのコピー
import shutil
shutil.copytree('testdir', 'testdir2')
一時ファイル
import tempfile
fname = tempfile.mktemp('.dat', dir='.')
fp = open(fname, 'w')
fp.write('test message')
fp.close()
CSVファイルの読み込み
import _csv
s = _csv.reader(file('test.txt', 'r'))
for ss in s:
print ss
- トークン解析をしなくて済む道具あることはすばらしい。
- _csvにしないと動かないのはなぜ?
gzipファイルの展開
import tarfile
tf = tarfile.TarFile.gzopen('test.dat.tar.gz', mode = 'r')
print tf.getmembers()
for l in tf.getmembers():
tf.extract(l)
簡単なデータベース
import dbm
db = dbm.open('test', 'rw')
if not db.has_key('key1'):
db['key1'] = 'record1'
print 'add record1'
else:
print db['key1']
- 複数プロセスでアクセスする場合はロックがいるのだろうか?
簡単なデータベース
import shelve
db = shelve.open('test.db')
if not db.has_key('key1'):
db['key1'] = ('v1','v2','v3')
print 'add new record'
else:
print 'exists key1 record ', db['key1']
- shelveを使うとpythonのタプル、リスト、辞書が格納できるのでとても便利。