如果在iPython中引入for循环或任何多行命令,如何返回并向其添加行?我查过这个:
for row in table.find_all('tr'):
cells = row.find_all('td')
for c,cell in enumerate(cells):
print c,":",cell.get_text().strip()
try:
this = cells[0]
that = cells[1]
the_docket = cells[2]
other_thign = cells[3]
jumble = re.sub('\s+',' ',str(cells[5])).strip()
except:
"Nope"
我意识到我需要添加一行代码,但我不能在iPython中点击“enter”,这是运行命令的b/c。那么我可以在iPython中编辑多行命令吗?
还有一种方法可以直接在repl中添加换行符:ctrl-v,ctrl-j
ctrl-v基本上允许发送控制代码,然后ctrl-j是换行符(换行符)的代码。输入有点笨拙,但它的优点是既可以在常规Python shell中工作,也可以在Bash本身中工作。
编辑:至少在iTerm2中,还可以将其分配给单个热键。我将ctrl-enter设置为0x16 0x0a的“发送十六进制代码”。也可以使用cmd-enter或其他任何方式。
这问题已经困扰了一段时间。我刚刚发现,当使用Ctrl-qCtrl-j时(即小写的q,j,无需按住shift键),将向现有的IPython编辑会话添加换行。
将光标移到冒号后面,然后按Ctrl-qCtrl-j
IPython:5.2.1,iTerm2:3.0.15,macOS:10.12.6
iPython中的
%edit
magic函数允许您在您喜欢的编辑器中编辑代码,然后将其作为直接键入的代码执行。您还可以编辑已经输入到repl中的代码,因为它存储在一个特殊的变量中,例如:相关问题 更多 >
编程相关推荐