python - 在带有句子的字符串列表中扫描“下载:”
问题描述
我有一个脚本可以获取我的互联网的下载和上传速度。现在我正在制作一个脚本,它从 txt 文件中收集所有下载数据,并将其平均,将其放入 excel 电子表格或其他东西中。问题是我无法找到扫描“下载:”的方法,因为字符串中还有下载数据。我希望能够使用 Download: 在其中获取所有字符串的索引,然后还可以获取数据。
我尝试使用 any() 来扫描单词,但意识到它只是告诉我元素是否在列表中,并且它只检查整个单词“下载:”是否作为字符串在列表中。
downloads_string = "Download: "
with open("file.txt", "r") as file:
file.readlines()
data_downloads_list = any(element in downloads_string for element in file)
print(data_downloads_list)
我希望得到真实的结果,但即使我在我的 txt 文件中有 Download: ,也总是得到错误的结果。我意识到它正在扫描只是“下载:”的字符串,而不是包含单词和数据的字符串。
解决方案
file.readlines()
将文件的行读入一个列表,因为它从来没有分配给任何东西,只是被垃圾收集......你也得到了反转的逻辑(你试图检查你的行是否在你正在寻找的字符串中- 如果您要查找的字符串在该行中,则不是),请尝试:
downloads_string = 'Download: '
with open('file.txt') as file:
data_downloads_list = [line for line in file if downloads_string in line]
print(data_downloads_list)
推荐阅读
- javascript - 在 v-for 中按升序对数据进行排序
- php - 如何使用 PHP 中的任何方法(oci/pdo)将包含字符串的数组绑定到 oracle 查询(IN 子句)?
- ruby-on-rails - Ruby before_validation 触发无限循环的回调
- docker - 由于 xpack 安全错误,Kibana docker 镜像无法启动
- shell - 我怎样才能最便携地通过 HTTP 从 shell 脚本下载?我可以依靠 curl 或 wget 吗?
- python - python pandas计算列中列表内出现的次数
- java - Selenium chromedriver 丢失窗口句柄。org.openqa.selenium.NoSuchWindowException:没有这样的窗口错误
- html - 带有显示滚动条的 svg 源的 Mac OS Safari 12 图像
- c# - 只有数字的文本框
- php - PHP致命错误:require():需要打开失败