0
def parse_actor_data(actor_data):
while 1:
line = actor_data.readline().strip()
if line.count('-') > 5:
break
actor_movie = {}
values = []
actor_name = ''
running_list = []
movie = []
for line in actor_data:
position = line.find(')')
running = line[:position + 1]
value = running.split('\t')
for k in value:
if k != '':
running_list.append(k)
actor_name_list = value[0].split(',')
actor_name = actor_name_list[0] + actor_name_list[-1]
for i in range(len(running_list)):
if value[0] == running_list[i]:
position2 = i
movie = running_list[position2+1:]
actor_movie[actor_name] = movie
check = actor_movie.keys()
for c in range(len(check)):
if len(check[c]) < 1:
actor_movie.pop(check[c])
return actor_movie
问题现在我只有电影的第一项被添加到actor_movie任何人都可以帮忙吗?我试过这么久这个我已经认真不知道为什么没有这方面的工作......将演员和他们的电影映射到字典
您正在解析的数据样本将会有所帮助。 – Acorn
您需要一些调试打印。在设置之后立即打印actor_name。如果actor_movie只有一个项目,那么您只需要经过for循环一次,或者每次迭代都将actor_name保持为相同的值 – TJD