python文件写一行数据
‘壹’ python把数据写入文件,规定每个文件只有固定行数
要规定行数的话,就得先规定列数了。否则从头到尾就一行,也就没有意义了,如果可以确定行尾的话,也可以用换行确定计数。例:
for item in yourdata:
count = 0
f = open('yourfile','w')
while(count<20):
f.write(yourdata)
count +=1
f.close()
‘贰’ Python中怎样实现向一个文档中写入数据, 要求从倒数第三行开始写入
将文本每行读入一个数组中啊 然后直接用python 中数组 insert() 插入
file = open("C:/a.txt", "r")
li = []
#line_counter = 0
while 1:
line = file.readline()
if line:
li.append(line)
else:
break
file.close()
lines = len(li)
‘’‘
下面从倒数第三行开始插入想要插入的字符串,每行插入的字符用\n分开。如果要写的东西多,可以从外部文件读入数据
’‘’
li.insert(lines-3,"1st row you want to write \n 2nd row you want to write \n")
file=open("C:/a.txt", "w")
for line in li:
file.write(line)
file.close()
‘叁’ python写数据到文件一次只能写一个数据
python写数据到衫乎文件一次只能写一个数据原因如下:
1、代码在第一次循环中将中缓文件关闭了,因此后边的数据写不进去。
2、文件内容不完整,卖塌模要写入的数据内容依然在缓冲区中,没有写入文件。
‘肆’ python pandas 怎样高效地添加一行数据
所以一般说来dataframe就是a set of columns, each column is an array of values. In pandas, the array is one way or another a (maybe variant of) numpy ndarray. 而ndarray本身不存在一种in place append的操作。。。因为它实际上是一段连续内存。。。任何需要改变ndarray长度的操作都涉及分配一段长度合适的新的内存,然后。。。这是这类操作慢的原因。。。如果pandas dataframe没有用其他设计减少的话猜大,我相信Bren说的"That's probably as efficient as any"是很对的。。。
所以in general, 正如Bren说的。。。Pandas/numpy structures are fundamentally not suited for efficiently growing.
Matti 和 arynaq说的是两种常见的对付这个问题的方法。。。我想Matti实际的意思是把要加的rows收集成起穗裂竖来然后concatenate, 这样只一次。arynaq的方法就是预先分配内存比较好理解。。。
如果你真的需要incrementally build a dataframe的话,估计你需要实际测试一下两种源念方法。。。
我的建议是,如有可能,尽力避免incrementally build a dataframe, 比如用其他data structure 收集齐所有data然后转变成dataframe做分析
‘伍’ python怎样实现一行一行读取文件数据,并且要实现读取一行数据,就进行条件判断
超简单
get='''12
15
16
19
23'''
result=get.split(' ')
foriinresult:
ifint(i)>16:
print(i)
满意还请采纳
‘陆’ Python writerow/writerows 添加数据
with open('xxxx.csv','w',newlines='') as f:
writer = csv.writer(f) #创建初始化写入对象
writer.writerow(['color','red'唯并桥]) # 一行一行写入 ['color','red']
* 在windows里,指猛csv保存得到的文件是每空一行储存一条数据,使用newlines=''可保证蔽敏存储存的数 据不空行。
with open('xxxx.csv','w') as f:
writer = csv.writer(f)
writer.writerows([('color','red'),('size','big'),('male','female')]) #多行写入
‘柒’ 用python读取文本文件,对读出的每一行进行操作,这个怎么写
用python读取文本文件,对读出的每一行进行操作,写法如下:
f=open("test.txt","r")
whileTrue:
line=f.readline()
ifline:
pass#dosomethinghere
line=line.strip()
p=line.rfind('.')
filename=line[0:p]
print"create%s"%line
else:
break
f.close()
‘捌’ 使用 Python 读写文件
有些数据是临时的,它们在应用程序运行时存储在内存中,然后丢弃。但是有些数据是持久的。它们存储在硬盘驱动器上供以后使用,而且它们通常是用户最关心的东西。对于程序员来说,编写代码读写文件是很常见的,但每种语言处理该任务的方式都不同。本文演示了如何使用 Python 处理文件数据。
在 Linux 上,你可能已经安装了 Python。如果没有,你可以通过发行版软件仓库安装它。例如,在 CentOS 或 RHEL 上:
在 macOS 上,你可以使用 MacPorts或Homebrew安装。在 Windows 上,你可以使用Chocolatey安装。
一旦安装了 Python,打开你最喜欢的文本编辑器,准备好写代码吧。
如果你需要向一个文件中写入数据,记住有三个步骤:
这与你在计算机上编码、编辑照片或执行其他操作时使用的步骤完全相同。首先,打开要编辑的文档,然后进行编辑,最后关闭文档。
在 Python 中,过程是这样的:
这个例子中,第一行以 写 模式打开了一个文件,然后用变量 f 表示,我使用了 f 是因为它在 Python 代码中很常见,使用其他任意有效变量名也能正常工作。
在打开文件时,有不同的模式:
第二行表示向文件中写入数据,本例写入的是纯文本,但你可以写入任意类型的数据。
最后一行关闭了文件。
对于快速的文件交互,常用有一种简短的方法可以写入数据。它不会使文件保持打开状态,所以你不必记得调用 close 函数。相反,它使用 with 语法:
如果你或你的用户需要通过应用程序需要向文件中写入一些数据,然后你需要使用它们,那么你就需要读取文件了。与写入类似,逻辑一样:
同样的,这个逻辑反映了你一开始使用计算机就已知的内容。阅读文档,你可以打开、阅读,然后关闭。在计算机术语中,“打开”文件意味着将其加载到内存中。
实际上,一个文本文件内容肯定不止一行。例如,你需要读取一个配置文件、 游戏 存档或乐队下一首歌曲的歌词,正如你打开一本实体书时,你不可能立刻读完整本书,代码也只能解析已经加载到内存中的文件。因此,你可能需要遍历文件的内容。
示例的第一行指明使用 读 模式打开一个文件,然后文件交由变量 f 表示,但就像你写数据一样,变量名是任意的。 f 并没有什么特殊的,它只是单词 “file” 的最简表示,所以 Python 程序员会经常使用它。
在第二行,我们使用了 line ,另一个任意变量名,用来表示 f 的每一行。这告诉 Python 逐行迭代文件的内容,并将每一行的内容打印到输出中(在本例中为终端或IDLE)。
就像写入一样,使用 with 语法是一种更简短的方法读取数据。即不需要调用 close 方法,方便地快速交互。
使用 Python 有很多方法向文件写入数据,包括用 JSON、YAML、TOML等不同的格式写入。还有一个非常好的内置方法用于创建和维护SQLite数据库,以及许多库来处理不同的文件格式,包括图像、音频和视频等。
via: https://opensource.com/article/21/7/read-write-files-python
作者:Seth Kenlon选题:lujun9972译者:MjSeven校对:turbokernel
‘玖’ python读取文件—txt文件常用读写操作
f = open("data.txt","r") #设置文件对象
f.close() #关闭文件
为了方便,避免忘记close掉这个文件对象,可以用下面这种方式替代
with open('data.txt',"r") as f: #设置文件对象
str = f.read() #可以是随便对文件的操作
f = open("data.txt","r") #设置文件对象
str = f.read() #将txt文件的所有内容读入到字符串str中
f.close() #将文件关闭
f = open("data.txt","r") #设置文件对象
line = f.readline()
line = line[:-1]
while line: #直到读取完文件
line = f.readline() #读取一行文件,包括换行符
line = line[:-1] #去掉换行符,也可以不去
f.close() #关闭文件
data = []
for line in open("data.txt","r"): #设置文件对象并读取每一行文件
data.append(line) #将每一行文件加入到list中
f = open("data.txt","r") #设置文件对象
data = f.readlines() #直接将文件中按行读到list里,效果与方法2一样
f.close() #关闭文件
可以使用pandas的.read_csv,读取文件的时候可以给每一列起名字,通过列名来调取相应列的数据。
import pandas as pd
data = pd.read_csv(" OSDO1012.txt",sep=',',header=None, names=['lat','lon','time','z']
使用data.lat就可以读取名为lat这一列的数据
data = np.loadtxt("data.txt",skiprows = 1) #将文件中数据加载到data数组里,并且跳过第一行
with open('data.txt','w') as f: #设置文件对象
f.write(str) #将字符串写入文件中
data = ['a','b','c']
单层列表写入文件
with open("data.txt","w") as f:
f.writelines(data)
每一项用空格隔开,一个列表是一行写入文件
data =[ ['a','b','c'],['a','b','c'],['a','b','c']]
with open("data.txt","w") as f: #设置文件对象
for i in data: #对于双层列表中的数据
i = str(i).strip('[').strip(']').replace(',','').replace('\'','')+'\n' #将其中每一个列表规范化成字符串
f.write(i) #写入文件
直接将每一项都写入文件
data =[ ['a','b','c'],['a','b','c'],['a','b','c']]
with open("data.txt","w") as f: #设置文件对象
for i in data: #对于双层列表中的数据
f.writelines(i) #写入文件
np.savetxt("data.txt",data) #将数组中数据写入到data.txt文件
np.save("data.txt",data) #将数组中数据写入到data.txt文件