我有一份txt数据,数据之间由若干空格分隔,我只想要前三列数据,并且数据之间只要一个空格,并输出新文件,求代码
时间: 2023-12-18 07:04:25 浏览: 70
你可以使用 Python 中的 split() 函数来分割每一行数据,并只取前三个元素,再利用 join() 函数来将这些元素组成一个新的字符串,并以空格作为分隔符。下面是示例代码:
```python
with open('original_file.txt', 'r') as f:
lines = f.readlines()
new_lines = []
for line in lines:
# 分割每一行数据,只取前三个元素
data = line.split()[:3]
# 将这些元素组成一个新的字符串,以一个空格作为分隔符
new_line = ' '.join(data)
new_lines.append(new_line)
# 将新的数据写入新文件
with open('new_file.txt', 'w') as f:
f.writelines(new_lines)
```
在上面的代码中,我们首先打开原始文件并读取所有行,然后对于每一行数据,我们使用 split() 函数将其分割,并只取前三个元素。接着,我们使用 join() 函数将这些元素组成一个新的字符串,并以一个空格作为分隔符。最后,我们将新的数据写入一个新的文件。
相关问题
我有一份txt数据,数据之间由若干空格分隔,我只想要前三列数据,并输出新文件,求代码
你可以使用Python来处理这个任务,具体代码如下:
```python
# 打开原始文件和新文件
with open('input.txt', 'r') as f_input, open('output.txt', 'w') as f_output:
# 对原始文件逐行处理
for line in f_input:
# 使用空格分隔数据,并只取前三列数据
data = line.strip().split()
new_data = '\t'.join(data[:3])
# 将结果写入新文件中
f_output.write(new_data + '\n')
```
在这个代码中,我们首先打开原始文件和新文件,然后对原始文件中的每一行进行处理。我们使用`strip()`方法去掉每一行数据前后的空格,然后使用`split()`方法将数据按照空格分隔成一个列表。最后,我们只取列表的前三个元素,并使用`join()`方法将它们以制表符(`\t`)连接起来。最后,我们将处理后的数据写入新文件中,并在每一行后加上一个换行符`\n`。
请注意,这个代码假设原始文件中的每一行都包含至少三列数据,否则会出现`IndexError`错误。如果你的数据不符合这个假设,你需要根据实际情况进行修改。
我有一份txt数据,数据之间由若干空格分隔,我只想要前三列数据,每行数据之间只要有一个空格,并输出新文件,求代码
以下是Python代码实现:
```python
with open('data.txt', 'r') as f:
lines = f.readlines()
new_lines = []
for line in lines:
split_line = line.split()
new_line = ' '.join(split_line[:3])
new_lines.append(new_line)
with open('new_data.txt', 'w') as f:
f.writelines('\n'.join(new_lines))
```
以上代码首先打开原始数据文件,逐行读取数据,并将每行数据按空格分割,然后只取前三列数据,将它们用一个空格连接起来,形成新的一行数据。最后将所有新的行数据写入新文件中。
阅读全文