python提取一个txt文件的第2列数据并存为另一个txt
时间: 2024-02-20 13:00:54 浏览: 106
可以使用Python中的split函数来提取txt文件的第2列数据,并使用Python中的文件操作来将其存储到另一个txt文件中。假设txt文件中每行数据以空格或制表符分隔,则可以使用以下代码:
```python
with open('file.txt', 'r') as f:
with open('second_column.txt', 'w') as out:
for line in f:
columns = line.split() # 以空格或制表符分隔每行数据
second_column = columns[1] # 第2列数据的索引为1,因为Python从0开始计数
out.write(second_column + '\n') # 将第2列数据写入新的txt文件中
```
这段代码将打开名为file.txt的文件,并逐行读取文件中的数据。对于每一行,它将使用split函数将其分隔成一个字符串列表,然后提取第2列数据并将其写入名为second_column.txt的新文件中。注意,在写入数据时,我们添加了一个换行符('\n'),以确保每个数据都单独占据一行。
相关问题
写一个python代码,从文件名1.txt的第1行第21列处读取一个字符串长度为10,把他存成变量l1,然后从第2行第21列处读取一个字符串长度为10,把他存成变量l2,返回
### 回答1:
以下是实现上述要求的代码:
```
def read_from_file(filename):
with open(filename, 'r') as f:
lines = f.readlines()
l1 = lines[0][20:30]
l2 = lines[1][20:30]
return l1, l2
filename = "1.txt"
l1, l2 = read_from_file(filename)
```
上面的代码打开了文件`1.txt`,并读取了文件的所有行,存在列表`lines`中。然后利用列表切片的语法从第1行第21列处读取字符串长度为10,并存成变量`l1`,从第2行第21列处读取字符串长度为10,并存成变量`l2`。最后返回两个变量。
### 回答2:
请参考以下Python代码:
```python
def read_strings_from_file(filename):
with open(filename, 'r') as file:
lines = file.readlines()
line1 = lines[0].strip()
l1 = line1[20:30]
line2 = lines[1].strip()
l2 = line2[20:30]
return l1, l2
filename = '1.txt'
l1, l2 = read_strings_from_file(filename)
print("l1:", l1)
print("l2:", l2)
```
以上代码定义了一个名为`read_strings_from_file`的函数,接受一个文件名作为参数。在函数内部,使用`open`函数打开文件并利用`readlines`方法读取所有行的内容,并按行存入`lines`变量。
接着,从第一行的第21列开始,取出长度为10的子字符串,并将其存入变量`l1`中。同样的方法也应用于第二行的第21列,将其子字符串存入变量`l2`中。
最后,通过调用`print`函数输出`l1`和`l2`的值,即为字符串1.txt中指定位置的子字符串。
### 回答3:
你好!以下是一个Python代码的例子,可以实现你的需求:
```python
def read_strings(filename):
with open(filename, 'r') as f:
lines = f.readlines()
l1 = lines[0][20:30].strip() # 从第1行第21列处读取一个长度为10的字符串
l2 = lines[1][20:30].strip() # 从第2行第21列处读取一个长度为10的字符串
return l1, l2
filename = '1.txt'
l1, l2 = read_strings(filename)
print('l1:', l1)
print('l2:', l2)
```
代码解释:
1. 首先定义了一个名为`read_strings`的函数,该函数接收一个文件名作为参数。
2. 打开给定的文件,读取每一行的内容,并将它们存储在一个列表`lines`中。
3. 从`lines`列表中的第1行和第2行中的指定位置,提取长度为10的字符串。使用索引[20:30]来获取字符串的范围,同时使用`strip()`函数删除字符串中的空格或换行符。
4. 将提取的字符串分别存储到变量`l1`和`l2`中。
5. 最后,函数返回`l1`和`l2`。
6. 在主程序中,我们指定了文件名为"1.txt",并调用`read_strings`函数来获取字符串。然后,利用`print`函数打印出变量`l1`和`l2`的值。
希望以上内容对你有帮助!如果你对代码还有任何疑问,请随时提问。
阅读全文