写一个python函数, 传入一个文本文件, 用来提取匹配的连续两行的关键信息
时间: 2024-04-29 22:21:59 浏览: 20
以下是一个示例函数,它接受文件路径作为参数,并返回匹配的连续两行的关键信息列表。
```python
def extract_info(file_path):
info_list = []
with open(file_path, 'r') as f:
lines = f.readlines()
for i in range(len(lines) - 1):
# 匹配连续两行的关键信息
if '关键词1' in lines[i] and '关键词2' in lines[i+1]:
info_list.append(lines[i].strip())
info_list.append(lines[i+1].strip())
return info_list
```
其中,'关键词1'和'关键词2'是你要匹配的关键词,可以根据实际情况进行修改。函数将返回一个列表,其中每个元素都是匹配的连续两行的关键信息。
相关问题
写一个python函数把一个文本文件中所有符合正则表达式的行和行号返回
可以使用Python中的re模块来实现正则表达式的匹配,同时使用内置函数enumerate来获取行号。下面是一个示例代码:
``` python
import re
def search_regex_in_file(file_path, regex_pattern):
matched_lines = []
with open(file_path, 'r') as file:
for line_num, line in enumerate(file, start=1):
if re.match(regex_pattern, line):
matched_lines.append((line_num, line.rstrip('\n')))
return matched_lines
```
这个函数接受两个参数:文件路径和正则表达式模式。它将打开文件并遍历所有行,使用re.match()函数来检查每一行是否匹配给定的模式。如果匹配,则将该行及其行号添加到匹配行列表中。最后,返回匹配行列表。
你可以使用类似下面的代码来调用这个函数:
``` python
matched_lines = search_regex_in_file('test.txt', r'\d+\.')
for line_num, line in matched_lines:
print(f"Line {line_num}: {line}")
```
这个代码将使用正则表达式模式`\d+\.`来搜索test.txt文件中以数字和句点结尾的行,并打印出它们的行号和内容。
写一个python函数,传入路径和字典格式数据,生成aa.geojson文件
好的,下面是一个示例函数:
```python
import json
def generate_geojson_file(path, data):
# 将数据转换为GeoJSON格式
features = []
for key, value in data.items():
feature = {
"type": "Feature",
"properties": {
"name": key,
"value": value
},
"geometry": {
"type": "Point",
"coordinates": value
}
}
features.append(feature)
geojson_data = {
"type": "FeatureCollection",
"features": features
}
# 将数据写入文件
with open(path, "w") as f:
json.dump(geojson_data, f)
```
这个函数接受两个参数:`path` 表示要生成的文件路径,`data` 是一个字典,包含了每个点的名称和坐标。函数将字典转换为GeoJSON格式,并将结果写入到指定的文件中。请注意,这个函数不会检查文件是否存在,如果文件已经存在,它将会被覆盖。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)