【发布时间】:2014-11-02 20:13:21
【问题描述】:
我正在尝试使用元组编写一个非常简单的程序。这在大多数情况下都有效,但我无法通过访问元组中的单个元素来真正让它工作。 我从包含一些信息的文件中获取输入,将其转换为元组并将数据存储在其他文件中。
如果我写所有数据或只写第一个元组,它会起作用,但在任何其他情况下都不会。以下是代码
filename = "in.txt"
stock_market = []
for line in open(filename):
fields = line.split(",")
name = fields[0]
shares = int(fields[1])
stock = (name,shares)
portfolio.append(stock)
f = open("output.txt","w")
print >>f, portfolio[1]
f.close()
【问题讨论】:
-
显示实际的回溯,或者至少告诉我们错误在哪一行。如果没有您的数据文件样本,我们无法自行复制。
-
这是您的实际代码吗?
stock_market从未使用过,portfolio从未初始化。另外,print >>f, portfolio[1]相当于“将portfolio的第二个元素的内容写入文件”。当portfolio的元素少于两个时会发生什么?请记住,[(a,b)]列表的长度为 1。 -
你为什么要为输入的每一行打开和关闭
output.txt? (另外,你是故意每次都截断输出,还是要以"a"模式打开文件?)
标签: python file indexing tuples