0
我的問題主要涉及如何在Python中的類中使用with
關鍵字。從Python中的多個方法訪問類文件
如果您有一個包含文件對象的類,那麼如何使用with
語句(如果有的話)。
例如,我在這裏不使用with
:
class CSVLogger:
def __init__(self, rec_queue, filename):
self.rec_queue = rec_queue
## Filename specifications
self.__file_string__ = filename
f = open(self.__file_string__, 'wb')
self.csv_writer = csv.writer(f, newline='', lineterminator='\n', dialect='excel')
如果我那麼做的事情在文件中的另一種方法,例如:
def write_something(self, msg):
self.csv_writer(msg)
這是合適的?我應該在什麼地方加入with
?我只是怕一個__init__
退出,with
退出並可能關閉該文件?
http://stackoverflow.com/a/27574601/742269 –
永遠不要在雙方都給出自己的屬性或方法雙下劃線。這些名稱是爲了Python自己的屬性而設計的,你可以覆蓋它們,但不能定義你自己的屬性。 –