2017-06-06 13 views
1

私は、空白がある場合のように請求書番号を分割する必要があります。シリアルは最初の部分であり、番号は秒です。しかし空白がない場合は、Serialは空白のままで、Numberはすべて請求書番号になります。どうすればいい? forループでIF文を作成する必要がありますか? Exmapleのinvoice.numberため分割金額は条件によって異なります

更新

はAAと数になりますので、シリアルAA 555で555になりますが、invoice.numberはAA555シリアルである場合「になります」と番号がAA555になります。しかし、私たちは、正確なinvoice.numberはあなたが非常にサンプルを使用できるように値Becase

for line in invoice.invoice_line_ids: 
    vals = { 
      'Serial': invoice.number or '', 
      'Number':invoice.number or '', 
      } 

答えて

1

は、辞書ですがどうなるか分からない

def parse(number): 
    resultList = [] 
    resultDirt = dict() 
    tempList = number.split(" ") 
    if len(tempList) > 1: 
     resultDirt['Serial'] = tempList[0] 
     resultDirt['Number'] = tempList[1] 
    else: 
     resultDirt['Serial'] = "" 
     resultDirt['Number'] = tempList[0] 

    resultList.append(resultDirt) 
    print(resultList) 
    return resultList 

parse("1321321 jkhhkhk") 
parse("13215465465") 

出力され、

[{'Number': 'jkhhkhk', 'Serial': '1321321'}] 
[{'Number': '13215465465', 'Serial': ''}] 
+0

請求書番号がすでに設定されているので、空白を含む請求書番号がある場合は、空白を含まないシリアル番号を空白にして、すべての請求書番号が「番号」になる場合はシリアル番号と番号に分割します。 –

+0

知っている..何のinv oice.numberになります。私の質問を更新しました –

関連する問題