如何从.txt文件中读取ID?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从.txt文件中读取ID?相关的知识,希望对你有一定的参考价值。

[我正在使用txt文件创建数据库,其中的数据存储如下:idTheme | Name | Hours。

例如:45 |面向对象的编程| 12

我需要使用给出的idTheme打印文本行,所以我这样做:

    print("Give me the ID")
    id_search = input("> ")

    for line in file:
        for x in line:
            if id_search != x:
                break
            else:
                print(line)
                break

因为ID始终是每行中的第一个字符,所以我认为这行得通。问题是,这仅在ID为1个字符长时有效。

我正在考虑将信息放在列表中,然后使用split(“ |”)对其进行划分,但这会将所有信息(不仅是ID)都放在列表中。

任何建议都很感激。

答案

您可以按照您所说的使用split,而只需使用索引0即可获取ID。

for line in file:
    id = line.split("|")[0]
    if id_search == id:
        print(line)

您可以反转if语句,因此,如果id等于搜索词,它将打印该行,否则什么也不会发生。您还可以避免遍历整行。

另一答案

您可以使用类似的东西:

with open("text.txt") as f:
  lines = [x.strip() for x in list(f) if x]

print("Give me the ID")
id_search = input("> ").strip()

if id_search:
  for line in lines:
    id, name, otherid = line.split("|")
    if id_search == id:
      print(line)
      break

Demo

另一答案

用以下内容替换您的for循环:

for line in file:
    id,name,hrs = line.split("|")
    if id_search == id
        print(line)
        break

以上是关于如何从.txt文件中读取ID?的主要内容,如果未能解决你的问题,请参考以下文章

从 Zip 文件中的文件中读取内容

如何从 jar 文件中读取文件?

从 Apollo 缓存中读取特定类型的所有片段

求一个Cstring类数组文件读取代码

SQL 读取 Where IN(来自 .TXT 文件的长列表)

如何让 Python 从文本文件中读取和提取单词? [复制]