我正在查看一本书中的源代码,并注意到有些代码似乎不在当前的Python2.7 API中。根据这段代码,模块应该有一个名为
我的问题是:这段代码怎么能运行?
LINES
和另一个名为COLS
的常量变量。我打开了Python交互终端,发现没有COLS
或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()
curses.LINES
是一个常量,显示默认行数,与窗口设置无关,而window.getmaxyx()
是一个函数,返回的行数可能与默认值不同,如果应用于使用curses.newwin()
创建的窗口。 - Apostolos