使用Python运行此代码时出现此错误:
TypeError:" NoneType"对象是不可取消的"。
代码:
number = 0
with open('playlist.txt') as read_number_lines:
for line in read_number_lines:
if line.strip():
number += 1
number = number - 1
print 'number: ', number
for i in range(number):
author_ = raw_input('author: ')
line = input('line: ')
file = open('playlist.txt','a').writelines(' - ' + author_)[line]
我该如何解决?
答案 0 :(得分:1)
你在
中遇到了一些问题file = open('playlist.txt','a').writelines(' - ' + author_)[line]
错误的直接来源是.writelines()
没有返回任何内容(因此返回None
),您尝试使用[line]
进行索引。这会产生你的错误。
此外,您不应直接在open()
电话上调用该方法。
整个第二个for
循环对我来说是神秘的。您在循环的每次迭代期间再次打开该文件(您不想这样做;它可能甚至不起作用)。
也许你想做类似
的事情with open('playlist.txt','a') as file:
for i in range(number):
author_ = raw_input('author: ')
line = raw_input('line: ')
file.write(author + " - " + line)
但是仍然很难看出这一点......