我正在看一些書籍的源代碼,並注意到一些代碼似乎沒有在當前的Python2.7 API中。根據此代碼,模塊curses
應該具有一個稱爲LINES
的常量變量,另一個稱爲COLS
。我打開了一個Python交互式終端,看到沒有COLS
或LINES
變量或方法。Python詛咒 - 模塊'詛咒'沒有屬性'LINES'
我的問題是:該代碼如何工作?
def draw_loglines(self):
self.screen.clear()
status_col = 4
bytes_col = 6
remote_host_col = 20
status_start = 0
bytes_start = 4
remote_host_start = 10
line_start = 26
logline_cols = curses.COLS - status_col - bytes_col - remote_host_col - 1
for i in range(curses.LINES):
c = self.curr_topline
try:
curr_line = self.loglines[c]
except IndexError:
break
self.screen.addstr(i, status_start, str(curr_line[2]))
self.screen.addstr(i, bytes_start, str(curr_line[3]))
self.screen.addstr(i, remote_host_start, str(curr_line[1]))
#self.screen.addstr(i, line_start, str(curr_line[4])[logline_cols])
self.screen.addstr(i, line_start, str(curr_line[4]), logline_cols)
self.curr_topline += 1
self.screen.refresh()
如果我打開了一個Python3交互shell和進口'curses'然後鍵入'curses.LINES'我還收到一個錯誤。 :/謝謝你的迴應。 – 2015-02-10 03:20:10
聖牛,我剛剛嘗試了Python 3.3,你說的對,它不起作用。也許3.4? – 2015-02-10 03:23:23
我正在使用Python 3.2.3:/我可能必須嘗試升級。我正在閱讀的這本書於2008年出版,所以我懷疑他們使用的是Python 3000.:D感謝John的幫助。您鏈接的終端寬度和高度上的SO線程可能是我最好的選擇。 – 2015-02-10 03:31:05