Python中遍历当前文件中所有名称

在Python中,我们经常需要遍历文件中的内容,比如查找特定的名称或者统计文件中出现的名称次数。在本文中,我们将介绍如何使用Python来遍历当前文件中所有名称的方法。

1. 获取当前文件名

首先,我们需要获取当前正在执行的Python脚本的文件名。这可以通过__file__来实现:

import os

current_file = os.path.basename(__file__)
print("当前文件名:", current_file)

2. 打开当前文件

接下来,我们需要打开当前的文件,并读取文件中的内容。我们可以使用open()函数来打开文件,并使用readlines()方法来读取文件内容:

with open(current_file, 'r') as file:
    lines = file.readlines()
    for line in lines:
        print(line)

3. 遍历文件中所有名称

现在我们已经成功读取了文件中的内容,接下来我们需要遍历文件中的所有名称。我们可以使用正则表达式来匹配文件中的名称,然后将其存储在一个列表中:

import re

names = []
pattern = r'\b[A-Za-z_][A-Za-z0-9_]*\b'

for line in lines:
    matches = re.findall(pattern, line)
    for match in matches:
        names.append(match)

print("文件中的所有名称:", names)

4. 统计名称出现次数

最后,我们可以使用collections模块中的Counter类来统计文件中每个名称出现的次数,并绘制成饼状图:

from collections import Counter
import matplotlib.pyplot as plt

name_counts = Counter(names)

names = list(name_counts.keys())
counts = list(name_counts.values())

plt.pie(counts, labels=names, autopct='%1.1f%%')
plt.axis('equal')
plt.show()

总结

通过以上步骤,我们成功地遍历了当前文件中的所有名称,并统计了每个名称出现的次数,最后将结果绘制成了饼状图。在实际应用中,我们可以根据需要修改代码,以满足不同的需求。

希望本文对你有所帮助,谢谢阅读!

flowchart TD
    A[获取当前文件名] --> B[打开当前文件]
    B --> C[读取文件内容]
    C --> D[遍历文件中所有名称]
    D --> E[统计名称出现次数]
pie
    title 文件中名称出现次数的比例
    "name1" : 30
    "name2" : 25
    "name3" : 20
    "name4" : 15
    "name5" : 10

通过以上流程和代码示例,我们学习了如何在Python中遍历当前文件中所有名称,并统计名称出现的次数。希木这篇文章对您有所帮助,谢谢阅读!