我有一个输入文件,它有以下日志(log)实体.

200,John,/home,60ms
200,Sarah,/log,13ms
500,Jack,/home,40ms

输出:

sarah

推荐答案

我猜,你的数据是在一个txt文件中

file = "path/to/user_data.txt"

def find_lowest(file):
    with open(file, 'r') as f:
        # Create list that contains every latency 
        # Because you cannot know the lowest or the max latency before check them all
        latencies = [] 
        names = []
        # Make a loop through users'data
        for user_data in f.readlines():
            data = user_data.strip('\n').split(",")  # Convert a row (string) into list
            latencies.append(int(data[3][:-2]))  # [:-2] to remove "ms"
            names.append(data[1])

    return names[latencies.index(min(latencies))]  # Return the first occurence

它给出了一个延迟最小的用户名,如果两个用户名相等,则只返回具有此延迟的第一个用户

如果您想要一个包含所有频率最低的用户的列表,只需将最后一行替换为:

return [names[i] for i, lat in enumerate(latencies) if lat == min(latencies)]

Python-3.x相关问答推荐

过滤查询集和“Q”运算符的不同值

使用正确的数据类型时,使用 Cerberus 验证 JSON 架构会引发错误

集合操作:应该只适用于集合,但适用于 dict_keys?

如何在 django 中没有循环的情况下获得前键的前键?

使用 python-binance 时,heroku [regex._regex_core.error: bad escape \d at position 7] 出错

排队多个子进程

使用一周的特定第一天将每日日期转换为每周

IronPython 3 支持?

如何使用存储在变量中的值作为 case 模式?

你如何修复 numpy 和 pandas 的“runtimeError: package failed to pass a sanity check”?

如何在 FastAPI 中的一条路由上捕获任意路径?

如何在python3中导入cv2?

全局捕获快速 api 中的“异常”

使用大括号抑制解包列表的 f 字符串语法

从 __future__ 导入注释

压缩 Python 生成器,第二个更短:如何检索被静默消耗的元素

如何在 Python 中键入提示通用数字类型?

是什么导致 [*a] 过度分配?

寻找最长的重叠范围

强制 Anaconda 安装 tensorflow 1.14