python提取txt文件中的关键字
时间: 2024-05-14 09:17:15 浏览: 116
可以使用Python中的re模块和正则表达式来提取txt文件中的关键字。以下是一个示例代码:
```python
import re
# 打开txt文件
with open('example.txt', 'r') as f:
text = f.read()
# 定义关键字列表
keywords = ['Python', 'programming', 'code']
# 使用正则表达式提取关键字
pattern = re.compile(r'\b(' + '|'.join(keywords) + r')\b', flags=re.IGNORECASE)
matches = pattern.finditer(text)
# 输出匹配到的关键字
for match in matches:
print(match.group(0))
```
在上面的代码中,我们首先打开一个名为example.txt的txt文件,并将其读入一个字符串变量text中。然后,我们定义了一个关键字列表keywords。接下来,我们使用正则表达式将关键字从文本中提取出来,并将它们输出到终端中。请注意,这个正则表达式使用了\b元字符来匹配单词边界,以确保我们只匹配到完整的单词。
相关问题
python提取txt文件中的关键字并生成新的txt文件
可以使用Python的正则表达式和文件处理模块来实现。
以下是一个简单的示例代码,它使用正则表达式来匹配文本中的关键字,然后将匹配到的内容写入一个新的文本文件中。
```python
import re
# 匹配的关键字列表
keywords = ['keyword1', 'keyword2', 'keyword3']
# 输入文件路径和输出文件路径
input_file = 'input.txt'
output_file = 'output.txt'
# 打开输入文件和输出文件
with open(input_file, 'r') as f_in, open(output_file, 'w') as f_out:
# 逐行读取输入文件内容
for line in f_in:
# 使用正则表达式匹配关键字
match = re.findall('|'.join(keywords), line)
if match:
# 如果匹配到关键字,则写入输出文件
f_out.write(line)
```
在上面的代码中,我们首先定义了一个关键字列表,然后指定了输入文件和输出文件的路径。在打开文件后,我们使用`for`循环逐行读取输入文件的内容,并使用`re.findall()`函数来匹配关键字。如果匹配到关键字,则将该行内容写入输出文件中。
你可以将代码中的`keywords`、`input_file`和`output_file`替换为你自己的值,然后运行代码即可提取输入文件中的关键字,并将匹配到的内容写入输出文件中。
python提取json文件指定关键字对应的内容
假设你有一个名为 `data.json` 的 JSON 文件,其中包含以下内容:
```json
{
"name": "John Doe",
"age": 30,
"address": {
"street": "123 Main St",
"city": "Anytown",
"state": "CA",
"zipcode": "12345"
},
"phone_numbers": ["123-456-7890", "555-555-5555"],
"email": "johndoe@example.com"
}
```
你想要提取 `name` 和 `phone_numbers` 的值。可以使用 Python 中的 `json` 模块来实现:
```python
import json
# 读取 JSON 文件
with open('data.json', 'r') as f:
data = json.load(f)
# 提取指定关键字的内容
name = data['name']
phone_numbers = data['phone_numbers']
# 打印结果
print('Name:', name)
print('Phone numbers:', phone_numbers)
```
输出:
```
Name: John Doe
Phone numbers: ['123-456-7890', '555-555-5555']
```
注意,`json.load()` 方法将 JSON 文件中的内容加载到 Python 字典中,然后可以通过字典的键来访问值。如果 JSON 文件中的键不存在,将会引发 `KeyError` 异常。
阅读全文