主要内容

一二维数据的打开、读写、关闭操作

csv格式的写入,读出

实例

注:其实csv 、excel形式的,后面用pandas更快

01

txt文件的打开读写关闭  举例  代码

打开文件推荐用with open("") as f:

等价于:f = open("")

              f.close()

主要是with是一个过程,包含了开门和关门。

避免你写了开门,忘了写关门。

读文件内容

PYTHON 关excel进程 python 关闭打开的excel_python打开文件

with open("D:\\PYECourse\\re\\info.txt","rt",encoding="utf-8")as f:    print(f.readline())  #>>小明进了国企      with open("D:\\PYECourse\\re\\info.txt","rt",encoding="utf-8")as f:    print(f.readlines())    #>>['小明进了国企\n', '小王考了北大\n', '小丽考取了清华\n', '小丁进了私企\n']    print(f.read().split())    #>>>['小明进了国企', '小王考了北大', '小丽考取了清华', '小丁进了私企']

这里的f是一个对象

我们发现 readline() 就是只读了一行

read()是全部读入变成了一个大的string

readlines()也是全部读入,但是一行行变成一个list

我们想把\n去掉 ,怎么操作?

read().split()

但是不能readlines().split() 因为readlines() 是读所有的行,存为了list,而list是没有split方法的。只有srting有。

【所有的方法,你要知道是对谁操作。是对srting还是对list】

谁.方法()

with open("D:\\PYECourse\\re\\info.txt","rt",encoding="utf-8")as f:    for i in f.readlines():  #等同于 for i in f:也是一行行        print(i.strip())

PYTHON 关excel进程 python 关闭打开的excel_二维_02

这个是一行一行打印出来

如果直接是print(i)

PYTHON 关excel进程 python 关闭打开的excel_二维_03



写入文件

lt=["北京","东京","上海"]with open("D:\\PYECourse\\re\\info.txt","w+",encoding="utf-8")as f:    f.write("王二考上了香港大学")    f.writelines("香港很美")    f.writelines(lt)    #只是写入了并不分行且还没有空格    f.writelines(",".join(lt))  #中间加入了,逗号

写入只有wirte,writelines  没有什么writeline

PYTHON 关excel进程 python 关闭打开的excel_数据_04

原本的内容没有了,其次我们发现都在一行。。。。。

我们的诉求:新加的内容不覆盖原来内容

分行写入而不是在一行

我们看看打开模式

w 顾名思义  写 覆盖写

r read ;x 是啥?【一时想不起来】 a是append添加

b 是二进制  t是txt格式  

lt=["北京","东京","上海"]with open("D:\\PYECourse\\re\\info.txt","a+",encoding="utf-8")as f:    f.write("王二考上了香港大学\n")    f.writelines("香港很美\n")    f.writelines(lt)    #只是写入了并不分行且还没有空格    f.writelines(",".join(lt))  #中间加入了,逗号

改一下代码

模式为a+

每一行写入的加入\n

但是以列表形式加入的怎么分行?可以在列表内容里加入\n

PYTHON 关excel进程 python 关闭打开的excel_二维_05

lt=["北京","东京","上海\n"]

02

思维导图  一维数据  二维数据csv 

PYTHON 关excel进程 python 关闭打开的excel_txt文件_06

PYTHON 关excel进程 python 关闭打开的excel_txt文件_07

PYTHON 关excel进程 python 关闭打开的excel_二维_08

import pandas as pdfrom pandas import Series,DataFramescore = DataFrame(pd.read_excel("sales.xls"))  #读表格 作为啥格式score.to_excel("sales3.xls") #导出到新表格print(score)

/