def open(file, mode='r', ...):
'r' read only
'w' override
'a' appending
open 之后:
with open(file, 'r') as f:
for line in f:
do_sth(line)
f.read()
f.readline()
line = f.readline()
while line:
do_sth(line)
lien = f.readline()
f.readlines()
comma separate values
with open('test.csv', 'r') as csv_file:
csv_reader = csv.reader(csv_file)
next(csv_reader)
for line in csv_reader:
print(csv_reader.line_num, line)
for line in csv_file:
print(line)
with open('test.csv', 'r') as csv_file:
csv_reader = csv.reader(csv_file)
while True:
try:
line = next(csv_reader)
print(line)
except:
break
with open('test.csv', 'w', newline='') as f:
writer = csv.writer(f)
for i in range(5):
writer.writerow("abcdefg")
with open('test.csv', 'r') as f:
for line in f:
print(line.strip())
a,b,c,d,e,f,g
h,i,j,k,l,m,n
o,p,q
r,s,t
使用DictReader可以像操作字典那样获取数据,把表的第一行(一般是标头)作为key。可访问每一行中那个某个key对应的数据。
with open('test.csv', 'w', newline='') as f:
writer = csv.writer(f)
writer.writerows(["abcdefg",'hijklmn','opq','rst'])
with open('test.csv', 'r') as f:
reader = csv.DictReader(f)
for line in reader:
print(line['g'])
headers = ['name', 'age']
datas = [{'name':'zhangxiaolong', 'age':18}, {'name':'liusu'}]
with open('test2.csv', 'w', newline='') as f:
writer = csv.DictWriter(f, headers)
writer.writeheader()
for line in datas:
writer.writerow(line)
with open('test2.csv', 'r') as f:
for line in f:
print(line.strip())