python遍历指定文件内数据,找到目标行内容打印出来
时间: 2024-09-07 08:01:44 浏览: 68
在Python中,遍历文件并找到包含特定内容的行可以通过读取文件并逐行检查来实现。以下是一个简单的示例代码,该代码打开一个指定的文件,并打印出包含目标字符串的所有行:
```python
# 指定文件路径
file_path = 'example.txt'
# 指定要搜索的目标字符串
target_string = '目标内容'
# 使用with语句打开文件,这样可以保证文件最后会被正确关闭
with open(file_path, 'r', encoding='utf-8') as file:
# 逐行读取文件内容
for line in file:
# 检查当前行是否包含目标字符串
if target_string in line:
# 如果包含,打印该行
print(line, end='') # end='' 防止print自动添加额外的换行符
```
这段代码首先定义了文件的路径和需要搜索的目标字符串。然后,使用`with`语句安全地打开文件,并通过一个循环逐行读取文件内容。如果当前行包含了目标字符串,则使用`print`函数将其打印出来。注意,这里使用`end=''`参数是为了防止`print`函数在每行末尾额外添加换行符,从而保持文件原有的格式。
相关问题
使用python循环遍历一个个文件夹下的不同文件夹下的不同文本文件,按行读取文本文件数据,将想要的数据添加到列表里,然后打印列表
好的,很高兴回答你的问题。这是一段Python代码可以实现你的需求:
```python
import os
# 定义要搜索的文件夹路径
folder_path = 'your/folder/path'
# 初始化一个空列表用于存放想要的数据
data_list = []
# 循环遍历文件夹及其子文件夹
for root, dirs, files in os.walk(folder_path):
for file in files:
# 如果文件名满足条件(例如以“.txt”结尾),才对其进行操作
if file.endswith('.txt'):
# 组合出完整的文件路径
file_path = os.path.join(root, file)
# 打开文件,并按行读取
with open(file_path, 'r') as f:
lines = f.readlines()
# 对每一行进行操作
for line in lines:
# 如果该行包含我们想要的信息,则添加到列表中
if 'wanted_info' in line:
data_list.append(line.strip())
# 打印最终的数据列表
print(data_list)
```
需要注意的是,你需要将`your/folder/path`替换成你要操作的实际文件夹路径,同时将`wanted_info`替换成你需要查找的具体信息。这段代码可以递归遍历目标文件夹及其子文件夹,对每个满足条件的文件按行读取,并将包含指定信息的行存入一个列表中,最终打印这个列表。希望对你有所帮助,如果你还有其他问题,可以继续向我提出。
python如何查找csv文件内指定列的某个数据
可以使用Python中的csv模块进行操作。以下是一个示例代码,可以查找csv文件中指定列的某个数据:
```python
import csv
with open('example.csv', 'r') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
if row['指定列'] == '目标数据':
print(row)
```
其中,'example.csv'是要查找的csv文件名,'指定列'是要查找的列的名称,'目标数据'是要查找的数据内容。代码中使用了csv.DictReader()方法来读取csv文件,然后遍历每一行数据进行查找,如果找到了目标数据,就打印该行数据。
阅读全文