2017-04-07 15 views
1

私が注文した方法で、製品のリストを示し、コードを作ってるんだ、とユーザが入力GTIN-8コードすることができ、彼らは「購入」したい金額を選択します。したがって、ユーザーがGTIN-8コードを入力したとき、FullLineは商品リストにある商品説明などであり、金額を表示する必要があります。しかし、その額は私が欲しくない新しい行に現れています。私は製品リストの後に改行を置くことを試みましたが、その前とその下に同じ行にとどまることはありません。ここ は、コードは次のとおりです。実行しているときPython - テキストファイルを1行に保存していますか?

nl="\n" 
Products=open("Productsfile.txt","w") 
Products.write(nl+"23456945, Thorntons Chocolate Box, £10.00") 
Products.write(nl+"12376988, Cadburys Easter Egg, £15.00") 
Products.write(nl+"76543111, Galaxy Bar, £1.00") 
Products.write(nl+"92674769, Cadury Oreo Bar, £1.00") 
Products.write(nl+"43125999, Thorntons Continental Box, £12.00") 
Products.close() 

Products=open("Productsfile.txt","r") 
print(Products.read()) 

Receipt=open("ReceiptFile.txt","w") 
Receipt.write("Here are your purchases: \n") 
Receipt.close() 

print("Please enter the GTIN-8 Codes of the products you want and how many") 
IfFinished="" 
while IfFinished != "Yes": 
    ProductsWanted=input("Please enter the GTIN-8 Code of the product: ") 
    AmountOfProducts=input("How many do you want? ") 

    with open("Productsfile.txt") as f: 
     for line in f: 
       if ProductsWanted in line: 
        FullLine=(line +"Amount: " +AmountOfProducts) 
        print(FullLine) 
        Receipt=open("ReceiptFile.txt","a") 
        Receipt.write(str(FullLine)) 
        Receipt.close() 

だから、私は、例えば、取得:

23456945, Thorntons Chocolate Box, £10.00 
Amount: 2 

私は同じ行に金額をしたいしかし

+1

「line.strip()」を使用してくださいo改行文字を含む、先頭または末尾の空白なしで新しい文字列を返します。このまたは任意の答えが解決した場合 – jonrsharpe

答えて

2

rstripメソッドを使用して、FullLine=(line +"Amount: " +AmountOfProducts)

を変更します

~FullLine=(line.rstrip() +"Amount: " +AmountOfProducts)

+0

こんにちは@Chloeは、あなたの質問は(https://meta.stackexchange.com/q/5234/179419)チェックマークをクリックして、[それを受け入れる]をご検討ください。これは、あなたが解決策を見つけ出し、回答者とあなた自身の両方に評判を与えていることを広範なコミュニティに示します。これを行う義務はありません。 – Surajano

関連する問題