为什么 python 不能用 ! 语法识别 shell 赋值



Python,python2或python3,无论我使用哪一个,一个简单的shall 命令(例如cat,head(都不起作用。

>>> !cat testhts.txt
File "<stdin>", line 1
!cat testhts.txt
^
SyntaxError: invalid syntax

可能我错过了一些非常简单的东西,但我花了太多时间继续自己寻找。 提前感谢您的帮助。

如果你想在python中执行shell代码,你可以使用子进程模块。

import subprocess
subprocess.call(' '.join(['cat','testhts.txt']),shell=True)

正如Josef所提到的,使用!仅适用于jupyter笔记本。