【问题标题】:Python - Get largest number from a list of numbers in a filePython - 从文件中的数字列表中获取最大数字
【发布时间】:2018-03-16 02:47:16
【问题描述】:

抱歉,但我搜索并找不到解决此问题的现有问题/答案。

简单地说,我只需要获取文件中的数字列表并获取最大的数字。我通常会使用 bash,但我有 Python 要求。

我知道如何打开文件以读取和输出文件的内容,但我无法让它处理 for 循环输出。先感谢您。

这是我需要在 python 中做的 bash 等价物:

chrisk@kihei:~$ cat foo
214101721792
214101675361
214101684152
214101743134
214101718688
214101731297
214101715541
214101743273
214101722035
214101703116
214101696928
214101687776
chrisk@kihei:~$ sort foo | tail -1
214101743273
chrisk@kihei:~$

【问题讨论】:

  • 搜索“python读取文件”和“python获取最大数量”
  • 谢谢..由于某种原因得到这个..解释器是 Python 2.7.12 >>> sorted(map(int, open('foo')))[-1] Traceback (最近最后调用):文件“”,第 1 行,在 中 ValueError:int() 的无效文字,基数为 10:'d2Z5O3e215JM130F\n'
  • @user1117603,您在问题中提供的文件不包含任何非数字行。这些不能简单地通过将它们转换为整数int。也许您可以向我们展示您的实际输入数据的更大部分,以便我们为您提供帮助。
  • @bla 是的,每个值 '\n' 后面都有一个换行符,这就是为什么它不认为它是一个 int 的原因。试图弄清楚如何剥离它......任何指针都会很棒。谢谢。

标签: python list ipython


【解决方案1】:
with open('foo') as f:
    max_num = max(int(i) for i in f)

print(max_num)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-16
    • 2020-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多