python处理json csv和excel

#json的文件操作

import json

#写操作:json.dump

s ='json'

json.dump(s,open('json.txt','w'))#dump和dumps的区别在于dumps是用来写入字符串的

#json.dumps(s,open(['sdasd',{'a':1}]),'w')

print(json.dumps((['sdasd',{'a':1}])))

# json.load()#从文件中读取

# json.loads()#从字符串中读取    s是str

p =json.load(open('json.txt','r'))#josn.load()里不能直接写文件名,因为字符串不能直接读所以要用open

print(p)

#csv文件是以纯文本形式来存储表格数据的 和excel表格有些类似

import csv

# with open('demo.csv','w',newline='') as f:#open里面有个new的值写成空以后可以让步自动换行

#    #f.write('a,b')#如果csv文件直接用write则不能直接放入一个列表 因为write的值只能是字符串

#    csvwrite = csv.writer(f,dialect='excel')#dialect='excel'表示默认打开的方式是excel

#    print(csvwrite)

#    csvwrite.writerow(['a','b','c'])

#    csvwrite.writerow(['a', 'b', 'c'])

#读取csv文件

rf =open('demo.csv','r')

reader = csv.reader(rf)

print(reader)#<_csv.reader object at 0x00000216F1CE76C8>一个对象

#print(next(reader))

#print(next(reader))#取出reader的值可以用生成器来逐条读取

for iin reader:

print(i)#也可以用for循环一次读完

import pandasas pd

df = pd.read_csv('demo.csv')

print(df)

#  a  b  c 这是用pandas读取出的结果 多出来的那个0是索引

#0  a  b  c

print(df.head())#预览数据,默认前五行

data = df.head()

data.to_csv('demo1.csv',index=False)#想要把索引写成0就把index=False

#excel文件 和csv的区别在于excel可以加入图表样式等 而csv却只能以文本记录 也就是只会是表格

#excel文件操作

#文件读取

import xlrd

r = xlrd.open_workbook('1.xls')#获取表

sheet = r.sheet_by_index(0)#获取第一个sheet 脚标也是从零开始的

print(sheet)

print(sheet.nrows)#打印下行

print(sheet.cell(1,1))#获取单元格数据 行,列,行和列都是从零开始算的

#文件的写入

import xlwt

r = xlwt.Workbook()

wsheet = r.add_sheet('sheet1')

wsheet.write(0,0,label ='name')

wsheet.write(0,1,label ='age')

r.save('demo4.xls')

#用pandas读取excel

data = pd.read_excel('demo4.xls')

print(data)

你可能感兴趣的:(python处理json csv和excel)