簡體   English   中英

在文本文件中尋找行號和行號

[英]looking for line and linenumber in text file

我為聊天程序做了一個額外的功能,該功能允許您鍵入一個特定的命令進行注冊,該命令使主機腳本保存您的對等名稱和您在終端中插入的名稱,它的保存如下57883:Jack在txt文件中(在主機上)。 如果有很多人注冊,它將看起來像這樣

57883:jack 
57884:bob
57885:connor
57886:james
57887:zzhshsb93838
57887:ryan

當某人發送消息時,我想知道他/她的姓名是否已注冊,如果已注冊,請將該名稱發送給客戶端,這樣,客戶端無需看到同名,便會看到發送消息的人的姓名。 為了做到這一點,我需要知道對等名稱是否在文件中,如果是; 文件中的哪一行。 到目前為止,我已經做到了:

 peer = sock.getpeername()
 with open('names.txt', 'r') as d:
     lines = d.readlines()
     for peer in lines:

而且我不知道如何找出在哪條線找到的時間,何時我知道如何分開57883和ack並選擇jack並保存。 干杯!

with open("names.txt", "r") as f:
    for i, line in enumerate(f):
        numb, name = line.rstrip().split(":")
        print i, numb, name

您可以要求Python為文件的每一行提供行號行內容的元組(請參見enumerate(f) )。 然后,刪除行終止符(請參閱line.rstrip() ),並將行拆分為由提供的字符分隔的部分(請參見split(":") )。 然后,您將擁有所有三個組件。

暫無
暫無

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

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