-1

すべての文字列がlenで等しくなるように、文字列のタプルにスペースを挿入する関数があります。また、文字列のタプルといくつかの書式設定情報を取得し、それらを文字列の 1 つのタプルに結合する関数もあります。

#code for equal string length
def insertSpace(self,content):
    max = 0
    for string in content:
        temp = len(string)
        if temp > max:
            max=temp
    retstring = ("",)
    for string in content: 
        retstring = retstring + (" "*(max - len(string)+1,)

    return self.combine(retstring,content,bold=False,newline=False)


#code for combine
def combine(self,leftside,rightside,bold=False,newline=False):

    if bold is True:
        bold = '<B>'
        boldend = '</B>'
    else:
        bold = ''
        boldend = ''

    if newline is True:
        newlinechar = '<br>'
    else:
        newlinechar = ''
    return tuple((bold +"{0}"+boldend+"{1}"+newlinechar).format(x,y) for x,y in zip(leftside,rightside))

このスクリプトを実行すると、次のようになります

File "mypythonfile.py", line 108
return self.combine(retstring,content,bold=False,newline=False)
     ^
SyntaxError: invalid syntax

値を変数に格納しようとしましたが、何も変わりませんでした。おそらく単純なものですが、私には見えません。

4

2 に答える 2

1

この行の締めくくり)に失敗しました:

retstring = retstring + ("&nbsp;"*(max - len(string)+1,))
                                                        ^ 
                                                        | 

編集:あなたのコードで:

>>> 'retstring = retstring + ("&nbsp;"*(max - len(string)+1,)'.count("(")
3
>>> 'retstring = retstring + ("&nbsp;"*(max - len(string)+1,)'.count(")")
2
于 2013-05-11T08:50:51.353 に答える
0

修正する

retstring = retstring + ("&nbsp;"*(max - len(string)+1,)

することが

retstring = retstring + ("&nbsp;"*(max - len(string)+1,)) #note the closing bracket
于 2013-05-11T08:50:33.923 に答える