我尝试在Spyder(Python2.7.11)上运行以下代码:
# -*- coding: utf-8 -*-
import numpy as np
import pandas as pd
%matplotlib inline
import matplotlib.pyplot as plt
import matplotlib.cm as cm
import tensorflow as tf
# settings
LEARNING_RATE = 1e-4
# set to 20000 on local environment to get 0.99 accuracy
TRAINING_ITERATIONS = 2000
DROPOUT = 0.5
BATCH_SIZE = 50
# set to 0 to train on all available data
VALIDATION_SIZE = 2000
# image number to output
IMAGE_TO_DISPLAY = 10
但我犯了个错误:
line 10
%matplotlib inline
^
SyntaxError: invalid syntax.
如果有人给我解释我会很感激的。
备注:代码来自Kaggle竞赛项目:数字识别器
%matplotlib inline
中的语法“%”由iPython(在这里设置它来处理魔术方法)识别,而不是Python本身,后者会产生SyntaxError。 Here is given one solution.因为行magics只由IPython命令行支持,而不是由Python cl支持,所以请使用:
'exec(%matplotlib inline)'
,而不是%matplotlib inline
只有IPython命令行支持行magics。它们不能简单地在脚本中使用,因为
%something
不是正确的Python语法。如果要从脚本执行此操作,必须访问IPython API,然后调用
run_line_magic
函数。您将不得不在脚本中执行以下操作,而不是
%matplotlib inline
:在this answer中描述了类似的方法,但它使用了不推荐的
magic
函数。注意,脚本仍然需要在IPython中运行。在vanilla Python下,
get_ipython
函数返回None
,并且get_ipython().run_line_magic
将引发AttributeError
。相关问题 更多 >
编程相关推荐