numpy 在 PythonTeX 中生成错误

numpy 在 PythonTeX 中生成错误

我的问题是:只要我不尝试加载 numpy,PythonTex 怎么能工作呢?

例如下面的简单代码

平均能量损失

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{float}
\usepackage{pythontex}

\begin{document}

\begin{pycode}

def fib(n): # nth Fibonacci value
    a, b = 0, 1
    for i in range(n):
        a, b = b, a + b
    return a
\end{pycode}

Did you know that $F_{10} = \py{fib(10)}$?

Did you know that $F_{100} = \py{fib(100)}$?

\end{document}

给出

在此处输入图片描述

而我得到了

在此处输入图片描述

当我使用

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amssymb}
\usepackage{float}
\usepackage{pythontex}

\begin{document}

\begin{pycode}
%import numpy as np %<- I get an error each time I try to load `numpy`
def fib(n): # nth Fibonacci value
    a, b = 0, 1
    for i in range(n):
        a, b = b, a + b
    return a
\end{pycode}

Did you know that $F_{10} = \py{fib(10)}$?

Did you know that $F_{100} = \py{fib(100)}$?

\end{document}

我在 Windows 10、TeXmaker、MikteX、Anaconda 上编译并运行

pdflatex --shell-escape -synctex=1 -interaction=nonstopmode %.tex|
python "C:/Program Files/MiKTeX/scripts/pythontex/pythontex.py" %.tex|
pdflatex --shell-escape -synctex=1 -interaction=nonstopmode %.tex

阅读有关 PythonTeX 的多篇文章后,我明白答案可能与我的 MikTeX 和/或 Python 安装有关?但奇怪的是,它对简单的事情有效,并为 numpy 产生错误...

编辑

正如评论中提到的,找到 python.tex 可能会有问题。所以我直接在 cmd 中输入了 python.exe 的完整路径,但我收到了以下错误消息,你可能比我更了解 :/

在此处输入图片描述

答案1

经过不同的检查,并感谢这个帖子你如何修复运行时错误包无法通过 numpy-an 的健全性检查

使用python3.9和numpy1.19.4时会出现这个错误所以卸载numpy1.19.4,安装1.19.3就可以了。

pip install numpy==1.19.3

我加载 numpy 得到了正确的结果

在此处输入图片描述

相关内容