如何使用 Python 打印文件中包含给定字符串的行?
在本文中,我们将向您展示如何使用 Python 打印给定文本文件中包含特定给定字符串的所有行。
假设我们有一个名为ExampleTextFile.txt的文本文件,其中包含一些随机文本。我们将从文本文件中返回包含给定特定字符串的行。
ExampleTextFile.txt
Good morning to TutorialsPoint This is TutorialsPoint sample File Consisting of Specific source codes in Python,Seaborn,Scala Summary and Explanation Welcome to TutorialsPoint Learn with a joy Good morning to TutorialsPoint
算法(步骤)
以下是执行所需任务的算法/步骤:
创建一个变量来存储文本文件的路径。
输入字符串作为静态/动态输入并将其存储在变量中。
使用open()函数(打开文件并返回文件对象作为结果)以只读模式打开文本文件,将文件名和模式作为参数传递给它(此处“r”表示只读模式)。
with open(inputFile, 'r') as filedata:
使用for循环遍历文本文件中的每一行
使用if条件语句和“in”关键字检查给定字符串是否出现在上述行数据中。
in关键字用于确定某个值是否存在于序列(列表、范围、字符串等)中。
它也用于在for循环中迭代序列
如果在对应行中找到给定字符串,则打印该行。
使用close()函数关闭输入文件(用于关闭已打开的文件)。
示例
以下程序逐行检查给定字符串是否在文本文件的一行中找到,如果找到则打印该行:
# input text file inputFile = "ExampleTextFile.txt" # Enter the string givenString = "to TutorialsPoint" print('The following lines contain the string {', givenString, '}:') # Opening the given file in read-only mode with open(inputFile, 'r') as filedata: # Traverse in each line of the file for line in filedata: # Checking whether the given string is found in the line data if givenString in line: # Print the line, if the given string is found in the current line print(line) # Closing the input file filedata.close()
输出
执行上述程序将生成以下输出:
The following lines contain the string { to TutorialsPoint }: Good morning to TutorialsPoint Welcome to TutorialsPoint Good morning to TutorialsPoint
在这个程序中,我们读取了一个包含一些随机文本的文本文件。我们逐行读取文本文件,然后检查给定字符串是否出现在该行数据中。如果存在,则打印该行的当前值(总行值)。
结论
我们学习了如何读取文件、逐行遍历文件以及获取本文中的所有行数据。一旦我们获得它们,我们就可以反转该行、更改大小写、查找该行中的单词数、检查元音、检索行字符等等。我们还学习了如何在文件中搜索字符串并打印相关行,这在典型的日常应用程序中(例如查找 ID 并打印所有人员信息)中经常使用。
广告