无法弄清楚功能出错的地方

时间:2015-11-02 21:44:49

标签: python python-2.7

我有一个文本文件IDlistfix,其中包含youtube视频ID列表。我正在尝试制作一个新的文本文件newlist.txt,这是第一个带有撇号的视频中的ID以及ID之间的逗号。这就是我为实现这一目标所写的:

n = open('IDlistfix','r+')
j = open('newlist.txt','w')
line = n.readline()

def listify(rd):
    return '\'' + rd + '\','

for line in n:
    j.write(listify(line))

这为我提供了','rUfg2SLliTQ的输出,我希望输出为'rUfg2SLliTQ',。我的功能在哪里出错?

4 个答案:

答案 0 :(得分:1)

尝试删除尾随空格并返回格式化字符串:

n = open('IDlistfix','r+')
j = open('newlist.txt','w')
line = n.readline()

def listify(rd):
    # remove trailing whitespace
    rd = rd.rstrip()
    # return a formatted string
    # this is generally preferable to '+'
    return "'{0}',".format(rd)

for line in n:
    j.write(listify(line))

答案 1 :(得分:1)

问题必须在,

`return '\'' + rd + '\`','

因为rd以'/ n'结尾。 从rd中删除'/ n',它应该没问题

答案 2 :(得分:1)

换线问题。

变化:

    for line in n:
        j.write(listify(line.replace('\n','')))

答案 3 :(得分:1)

你只需要删除新行:

j.write(listify(line.strip())) # Notice the call of the .strip() method on the String