#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)