如何从.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
另一答案
用以下内容替换您的for循环:
for line in file:
id,name,hrs = line.split("|")
if id_search == id
print(line)
break
以上是关于如何从.txt文件中读取ID?的主要内容,如果未能解决你的问题,请参考以下文章