簡體   English   中英

如何在文本文件 python 中讀取以特定 integer 開頭的行?

[英]how to Read a row starting with a specific integer in text file python?

我的問題是我需要從文本文件中讀取並打印以特定整數(用戶輸入)開頭的特定行。

這是我的文本文件信息:

1, '美國', 7244184, 53629, 208440, 895

2, '墨西哥', 715457, 5408, 75439, 490

3, '愛爾蘭', 33995, 319, 1797, 3

4、“印度”、5901571、85468、93410、1093

5, '土耳其', 311455, 7858, 7858, 73

8, '卡塔爾', 124650, 220, 212, 2

例子:

如果用戶輸入代碼 = 8

我需要程序打印 [8,Qatar,124650,220,212,2]

我應該怎么辦?

根據查看結構文件,它看起來像 csv 最好你可以使用 pandas 並遵循以下代碼:

import pandas as pd
df = pd.read_csv('file.csv', header=None)
#you can read txt file also and set seperator like this pd.read_csv('file.txt', sep=" ", header=None)
userinput=input()
print(df.loc[df[0] == int(userinput)])

如果您有任何問題,請告訴我:)

n = int(input()) with open('./file.txt') as f: content = f.read().splitlines() for line in content: if int(line[0]) == n: elements = line.split(',') # a list of individual elements

您的文件是 csv(逗號分隔值),因為有可能將其讀取為 dataframe(請參閱熊貓)。

import pandas as pd
dataframe = pd.read_csv("your_file.txt", names=["Country", "column_2", "column_3", "column_4", "column_5"], index_col=0)

讀取 csv 的結果

user_input = int(input())
result = dataframe.iloc[user_input]
print(result)

作為回報,您將獲得 Object 以及每列的值。

print(result.Country)

ps:您必須安裝庫 pandas,如果您有 pip,只需鍵入: pip install pandas 如果沒有,請先安裝 pip 您將需要它,只需谷歌如何安裝 pip。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM