我想清理我的代碼一點點,和我有麻煩搞清楚其中的這2種方法被認爲是最Python的一個什麼是打開一個文件最pythonic的方式?
import os
dir = os.path.dirname(__file__)
str1 = 'filename.txt'
f = open(os.path.join(dir,str1),'r')
雖然第二似乎是乾淨的一個了,我覺得聲明fullPath有點太多了,因爲它只會使用一次。
import os
dir = os.path.dirname(__file__)
str1 = 'filename.txt'
fullPath = os.path.join(dir,str1)
f = open(fullPath,'r')
一般情況下,是一個更好的東西,以避免另一個呼叫內部通話功能,即使它增加了一行代碼?
真的沒關係。兩者都不是「pythonic」。你應該按照你喜歡的方式去做。無論你做什麼,請遵循Januka的建議並使用'with'。這比你是否應該使用臨時變量的問題重要得多。就個人而言,在這樣一個簡單的例子中,我傾向於沒有臨時變量。 –
好的,謝謝你的答案! – Faeralis
另一種看待它的方法是「你覺得哪一個讓代碼更具可讀性?」在表達式更復雜的情況下,它肯定可以幫助使用臨時變量來澄清代碼。在這個特定的代碼中,它無關緊要,因爲它非常簡單。 –