Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 通过sh导入模块运行.py脚本错误_Python_C++_Xcode_Sh - Fatal编程技术网

Python 通过sh导入模块运行.py脚本错误

Python 通过sh导入模块运行.py脚本错误,python,c++,xcode,sh,Python,C++,Xcode,Sh,这是一个非常基本的问题,关于如何用python编写代码并从一个非常初学者那里运行脚本。 我正在使用Xcode9.4.1编写一个脚本,它应该是用于python3.6的。然后,在脚本的同一文件夹(比如“my_文件夹”)中有一个sh script run.sh python my_script.py from tick.base import TimeFunction import numpy as np import matplotlib.pyplot as plt v = np.arange(

这是一个非常基本的问题,关于如何用python编写代码并从一个非常初学者那里运行脚本。 我正在使用Xcode9.4.1编写一个脚本,它应该是用于python3.6的。然后,在脚本的同一文件夹(比如“my_文件夹”)中有一个sh script run.sh

python my_script.py
from tick.base import TimeFunction
import numpy as np
import matplotlib.pyplot as plt

v = np.arange(0., 10., 1.)
f_v = v + 1
u = TimeFunction((v, f_v))
plt.plot(v, u.value(v))
print('donne!\n')
python脚本看起来像

python my_script.py
from tick.base import TimeFunction
import numpy as np
import matplotlib.pyplot as plt

v = np.arange(0., 10., 1.)
f_v = v + 1
u = TimeFunction((v, f_v))
plt.plot(v, u.value(v))
print('donne!\n')
但是当我试图从终端运行我的_script.sh时,我得到了一个“ImportError:没有名为tick.base的模块”错误。 但是tick文件夹实际上存在于“my_computer/anaconda3/lib/python3.6/site软件包”中,直到上周我还在使用anaconda navigator的Spyder,并且一切正常,因此没有发生“导入错误”

问题很简单,从某种意义上说,它只是“编写和运行python脚本的典型过程是什么,在给定的机器上运行时,模块应该如何导入和下载?”

我需要它,因为我的脚本将通过ssh在另一台机器上运行,并使用我的笔记本电脑进行一些尝试。到去年为止,我一直使用C语言,只需要移动一些包含代码和.h文件的文件夹

谢谢你的帮助

编辑1: 在Spyder 3.2.7设置中,脚本给出了无问题的结果,我打印了

import sys
print(sys.path)
-手动-将内容复制到my_script.py中的sys.path变量,然后重新运行“run.sh”,现在出现一个新的(奇怪的)错误:


首先,检查调用脚本的python是否指向anaconda python,并且它的版本与您预期的版本相同。您可以在Linux和Mac中执行“whichpython”命令,该命令指向指向python的路径。如果它指向的python版本或构建与您期望的不同,那么将所需的路径添加到系统环境path变量中。在Linux和Mac中,可以通过在/home/文件夹的.bashrc文件中添加以下行来完成此操作:

export PATH=/your/python/path:$PATH
然后获取.bashrc文件的源代码。 来源:bashrc


如果您在cent os这样的操作系统上,破坏默认python路径可能会破坏您的yum,因此在更改它之前要小心。

我正在PyCharm中运行一个脚本,在项目解释程序下我有路径 C:\envs\conda\keras2\python.exe

当我尝试在服务器上通过ssh运行脚本时,会出现“no module named”错误。我明白了
/usr/bin/python作为服务器上“哪个python”的ans。你能告诉我脚本要正常运行必须添加哪条路径吗?

在“我得到的是哪条python”/anaconda/bin/python”下,而不是我想要的“anaconda3/lib/python3.6”。。。。但有没有办法“瞬间”改变道路?或者在my_script.sh文件的开头显式地声明它?如果您只想运行一次,可以运行:/anaconda3/lib/python3.6/python my_script.pyI获得“没有这样的文件或目录”。但是,在“ls/anaconda3/lib/python3.6”下,它列出了正确的文件。很抱歉,您正在回答另一个问题,或者我不理解您的观点。。?