从文本文件中提取数字

PythonBeginner
立即练习

介绍

在这个项目中,你将学习如何从文本文件中提取大于 5 的数字并打印出来。

👀 预览

$ python FindDigits.py
876

🎯 任务

在这个项目中,你将学习:

  • 如何打开一个文本文件并读取其内容
  • 如何从字符串中提取特定的数字
  • 如何将提取的数字连接成一个新的字符串
  • 如何打印提取的数字

🏆 成果

完成这个项目后,你将能够:

  • 操作字符串并从中提取特定的数据
  • 编写一个 Python 脚本来自动化一个简单的数据处理任务
  • 应用你在 Python 中关于文件处理和字符串操作的知识

打开 String.txt 文件并读取字符串

在这一步中,你将学习如何打开String.txt文件并读取字符串。

  1. 打开你的文本编辑器,在/home/labex/project目录下创建一个名为FindDigits.py的新文件。
cd /home/labex/project
touch FindDigits.py
  1. FindDigits.py文件中,使用open函数打开同一目录下的String.txt文件并读取字符串。
## 打开同一目录下的 String.txt 文件并读取字符串
with open("String.txt", "r") as f:
    string = f.read()

with语句用于确保读取完成后文件能正确关闭,即使引发了异常。

✨ 查看解决方案并练习

从字符串中提取大于 5 的数字

在这一步中,你将学习如何从字符串中提取大于 5 的数字,并将它们连接成一个新的字符串。

  1. 初始化一个空字符串来存储提取的数字。
## 初始化一个空字符串来存储提取的数字
numbers = ""
  1. 遍历字符串中的每个字符,检查它是否是一个数字且大于 5。如果是,则将其追加到numbers字符串中。
## 遍历字符串中的每个字符
for char in string:
    ## 如果字符是一个数字且大于 5
    if char.isdigit() and int(char) > 5:
        ## 将其追加到 numbers 字符串中
        numbers += char

isdigit()方法检查字符是否是一个数字,而int(char)将字符转换为整数以检查它是否大于 5。

✨ 查看解决方案并练习

打印提取出的数字

在这一步中,你将学习如何打印提取的数字。

  1. 打印numbers字符串。
## 打印出 numbers 字符串
print(numbers)

最终的FindDigits.py文件应如下所示:

## 打开同一目录下的 String.txt 文件并读取字符串
with open("String.txt", "r") as f:
    string = f.read()

## 初始化一个空字符串来存储提取的数字
numbers = ""

## 遍历字符串中的每个字符
for char in string:
    ## 如果字符是一个数字且大于 5
    if char.isdigit() and int(char) > 5:
        ## 将其追加到 numbers 字符串中
        numbers += char

## 打印出 numbers 字符串
print(numbers)

你现在已经完成了这个项目。运行FindDigits.py文件以查看输出。

$ python FindDigits.py
876
✨ 查看解决方案并练习

总结

恭喜!你已经完成了这个项目。你可以在 LabEx 中练习更多实验来提升你的技能。