繁体   English   中英

根据用户输入从python中的.txt文件中提取信息

[英]Pulling information from a .txt file in python based on a user input

我有一个 .txt 文件形式的列表,我需要根据用户输入从中提取某些信息。

Latitude   Longitude  City  Province/State   Country
82°30N     62°20W     Alert Nunavut    Canada
81°36N     16°40W     Nord  Greenland  Denmark
79°59N     85°56W     Eureka     Nunavut    Canada

这是列表的一个片段。 我了解如何提取信息并将其放入列表中。 我需要找到用户输入的城市,然后输出城市的链接纬度和经度。 我是 python 的新手,所以不确定我可以使用什么过程来解决这个问题。

我不会将其放入列表中,而是将输出放入pandas.Dataframe (或只是dict )。 假设您的文本文件用制表符分隔,有一个标题并且每行长度相等,您可以执行以下操作:

df = pd.read_csv('yourfile.txt',delimiter='\t')

print('Enter name of City:')
name = input()
print('Latitude:', df[df['City'] == name]['Latitude'].values, 'Longitude:', df[df['City'] == name]['Longitude'].values)

如果您执行脚本并输入城市名称,它将作为字符串存储到name 之后,我们打印从DataFrame选择相应城市的 Long/Lat 值。

简单的pythonic方式,希望它可以帮助你

city = input("Enter City name")

with open('your text file') as file:
    print(file.readline().split()[:3])
    for line in file.readlines():
        if line.split()[2] == city:
            print(line.split()[:3])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM