【问题标题】:Sliced list with false data带有虚假数据的切片列表
【发布时间】:2013-08-04 19:41:45
【问题描述】:

我是 python 初学者,但遇到了问题。我尝试从列表中获取前 10.000 个项目,但它返回了错误的数据。我注意到,因为我首先尝试获取前 10/20/50 个项目(我将结果打印在 .txt 中),但我什么也没得到。这是部分代码。

/*for key in docs:
T_buffer=docs[key]['tf'].items()
keyset.append(T_buffer)
*/
keyseta = list(itertools.chain(*keyset))
keyseta.sort(key=lambda z: z[1], reverse=True)

keyset=keyseta[:8000]

/*
#t0=time.time() #timer ON

#for infile in docs: #upologismos idf kai tf_idf
#    for word in docs[infile]['tf']:
#        docs[infile]['idf'][word]= idf(word,voc)
#        docs[infile]['tf_idf'][word]= docs[infile]['idf'][word] * docs[infile]['tf'][word]

#print time.time()-t0, "seconds"
*/    
loglista1 = open("log1.txt",'w')
print >>loglista1, keyset

列表包含如下数据:

 [('uwm', 0.034482758620689655),
 ('s', 0.034482758620689655),
 ('the', 0.034482758620689655),
 ('have', 0.034482758620689655)...]

【问题讨论】:

  • loglista1.close()在哪里?
  • dangg.... thnx !!!我忘记关闭文件了。
  • 最好使用with 语句和file.write 将内容写入文件。 print >> 在 py3.x 中不起作用。
  • 如果您需要在写入文件数据时对其进行检查,您还可以通过调用loglista1.flush() 来刷新缓冲区。
  • @find-missing-semicolon List 是一个有序的项目集合,您将列表与集合混淆了。

标签: python list slice


【解决方案1】:

如果我理解您的问题,您将尝试从列表中获取前 10、20、50 个项目。如果是这样的话-

list = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
for i in range(0,10):
   print list[i] #first 10 items
for i in range(0,20):
   print list[i] #first 20 items

将相同的逻辑应用于您的列表。

【讨论】:

    猜你喜欢
    • 2020-11-29
    • 1970-01-01
    • 2010-12-14
    • 2015-06-28
    • 2018-09-09
    • 2016-07-21
    • 2019-04-29
    • 2013-06-26
    相关资源
    最近更新 更多