首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

用于获取单词在txt文件中所在位置的代码

获取单词在txt文件中所在位置的代码,可以通过以下Python代码实现:

代码语言:txt
复制
def find_word_positions(word, file_path):
    positions = []
    with open(file_path, 'r') as file:
        for i, line in enumerate(file):
            words = line.strip().split()
            if word in words:
                for j, w in enumerate(words):
                    if w == word:
                        positions.append((i+1, j+1))
    return positions

word = "example"
file_path = "example.txt"

result = find_word_positions(word, file_path)
print(f"The word '{word}' appears at the following positions:")
for pos in result:
    print(f"Line: {pos[0]}, Word: {pos[1]}")

代码解释:

  1. 定义一个名为find_word_positions的函数,接受两个参数:要查找的单词和文件路径。
  2. 创建一个空列表positions,用于存储单词出现的位置。
  3. 使用with open(file_path, 'r') as file语句打开指定的文件,并将其赋值给file变量。
  4. 使用enumerate(file)遍历文件的每一行,同时获取行号和行内容。
  5. 使用strip()方法去除行末尾的换行符和空格,并使用split()方法将行内容拆分为单词列表。
  6. 如果目标单词在单词列表中,通过enumerate(words)遍历单词列表,同时获取单词在列表中的位置。
  7. 如果当前单词与目标单词相同,将位置(i+1, j+1)添加到positions列表中(行号和单词位置都从1开始)。
  8. 循环结束后,返回positions列表。
  9. 指定要查找的单词和文件路径,并调用find_word_positions函数。
  10. 打印出单词在文件中的位置。

注意:上述代码只是示例,具体应根据实际情况进行调整和优化。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

共17个视频
动力节点-JDK动态代理(AOP)使用及实现原理分析
动力节点Java培训
动态代理是使用jdk的反射机制,创建对象的能力, 创建的是代理类的对象。 而不用你创建类文件。不用写java文件。 动态:在程序执行时,调用jdk提供的方法才能创建代理类的对象。jdk动态代理,必须有接口,目标类必须实现接口, 没有接口时,需要使用cglib动态代理。 动态代理可以在不改变原来目标方法功能的前提下, 可以在代理中增强自己的功能代码。
领券