Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python-用文件中的列替换行_Python_File - Fatal编程技术网

Python-用文件中的列替换行

Python-用文件中的列替换行,python,file,Python,File,很抱歉发布这么简单的问题,但我在谷歌上找不到答案。 我希望我的代码能做这样的事情 代码: p、 s我希望在以下操作之前,将文件中的行替换为值xxx.dat: ddddddddddddddddd EEEEEEEEEEEEEEEEE fffffffffffffffff with open('xxx.txt','r') as f: x=f.readlines() x[1] = "QQQQQQQQQQQQQQQQQQQ\n" with open('xxx.txt','w') as f:

很抱歉发布这么简单的问题,但我在谷歌上找不到答案。 我希望我的代码能做这样的事情 代码:

p、 s我希望在以下操作之前,将文件中的行替换为值

xxx.dat:

ddddddddddddddddd
EEEEEEEEEEEEEEEEE
fffffffffffffffff

with open('xxx.txt','r') as f:
    x=f.readlines()
x[1] = "QQQQQQQQQQQQQQQQQQQ\n"
with open('xxx.txt','w') as f:
    f.writelines(x)
xxx.dat之后:

ddddddddddddddddd
QQQQQQQQQQQQQQQQQQQ
fffffffffffffffff
注意:f.read()返回一个字符串,而f.readlines()返回一个列表,允许您替换该列表中的某个事件。
包含
\n
(Linux)换行符对于在下次读取文件时将第[1]行与第[2]行分隔开来非常重要,否则会导致:

ddddddddddddddddd
QQQQQQQQQQQQQQQQQQQfffffffffffffffff

当您说用列替换行时,您指的是文件中的某个任意字符列,还是基于某个分隔符的某个列,还是其他什么?这将有助于得到一些澄清这一点,以便能够给你的问题一个有用的答案。至于替换线部件,这里有一个线程来解释这个子问题:。我无法将代码片段放入注释中,但本质上,您需要替换文件的行,然后重新写入整个文件。第[1]行将是文本文件中的第一行。对于您认为这是一个愚蠢的问题,我深表歉意,因为我还没有完全理解-在您的代码片段中,新的_值仅仅是来自其他地方的任意文本,您想成为“Bal.txt”中第1行的新文本吗?新的_值是一个变量如果新的_值是一个字符串,我想上面的链接可以应用:
以open('Bal.txt','r')作为文件:data=file.readlines();data[1]=新的_值,其中open('Bal.txt','w')作为文件:file.writelines(data)
(很遗憾,无法格式化注释中的代码段)
ddddddddddddddddd
QQQQQQQQQQQQQQQQQQQfffffffffffffffff