簡體   English   中英

在python中使用file.write()

[英]Using file.write() in python

我有一個快速的問題,一直在中斷我的程序。 由於某種原因,file.write()將僅接受1個字符串或變量,而我的問題有沒有解決的辦法?

例如,我問是否可以一次將多個變量或字符串寫入一個文件。 像這樣,但是沒有.write(),因為它不允許您這樣做。

file.write("apples: ", numApples, "\n oranges: ", numOranges)

歡迎任何幫助或建議!

我現在想到的最好的答案是將其全部制成一個字符串,然后將其發送到文件中。

您可以將所有參數轉換為字符串並將它們附加在一起。

例如, str(var)會將var轉換為字符串類型。

您可以簡單地使用str(numApples)等,然后使用+ (字符串串聯)運算符將其附加。 修改后的代碼如下所示

file.write("apples: " + str(numApples) + "\\n oranges: " + str(numOranges))

在這里,您只有一個字符串參數,而不是4。

您也可以使用格式-:

file.write("apples: {0}\n oranges: {1}".format(numApples, numOranges) )

這使您可以靈活地為數字添加格式,而簡單的字符串連接解決方​​案則沒有。

使用file.writelines ,它需要字符串的迭代,而不是單個字符串。

否則使用print(*args, file=)接受任何內容並為您調用str()。

您需要根據自己的情況提出意見,但方法很少:

  1. 使用str()使每個部分成為字符串,然后使用'+'進行連接
  2. 使用str.format
  3. 使用簡潔明了的舊語法:

     file.write("apples: %s\\noranges:%s" % (numApples, numOranges)) 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM