【问题标题】:Reading from a text file that has arbitrary lines and print to the console从具有任意行的文本文件中读取并打印到控制台
【发布时间】:2015-10-06 00:39:33
【问题描述】:

已删除 已删除 已删除 已删除

【问题讨论】:

  • 好吧,Python 没有有数组。您可以将他们的列表用作数组
  • @sam2090 所以我必须使用 list 来阅读这些行。嗯。

标签: python


【解决方案1】:
#!/usr/bin/env python

import sys, os

def usage():
    print "Usage: ./process_some_stuff.py <input_file>"

if len(sys.argv) != 2:
    usage()
    raise ValueError("Missing input filename")

in_fn = sys.argv[1]

if os.path.isfile(in_fn):
    with open(in_fn, 'rb') as in_fh:
        line_idx = 0
        for line in in_fh:
            # do stuff here
        line_idx += 1
    in_fh.close()
else:
    usage()
    raise ValueError("Could not open input file")

# do stuff here 部分中,使用line_idx 上的模运算符来决定如何将四行之一读入包含四个键的Python 字典。将该字典存储在列表中。然后遍历列表以检索名称和最终分数,如果 id 和名称是自动递增的,您可以按顺序打印出来。

【讨论】:

  • 你能分享一个伪代码或简单的例子吗?我对此真的很陌生..
  • 如果你在做家庭作业,你自己做的比我帮你做的学到更多。
【解决方案2】:

Python 没有数组。您可以使用 list 作为数组。我不确定您的文件的结构,但您可以将整行存储在 list index 中,然后使用 delimiter 存储 split

小例子:

with open("x.txt") as f:
    data = f.read()
    #do processing

Here 是指向Python Input/Output 文档的链接

编辑: Python 确实有一个 array 模块,但在你的情况下,你不能使用它们。来自documentation

这个模块定义了一个对象类型,它可以紧凑地表示一个 基本值数组:字符、整数、浮点数。 数组是序列类型,其行为与列表非常相似,不同之处在于 存储在其中的对象的类型受到限制。

【讨论】:

  • Python 确实有数组,它们是在数组模块中定义的。
  • @AlexanderBelopolsky 他们可以,但仅限于少数数据类型。我已经编辑了我的答案:)
猜你喜欢
  • 1970-01-01
  • 2021-10-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多